自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (3)
  • 收藏
  • 关注

原创 python-docx 识别表格在docx文档中的所在位置

由于工作需要提取一个word文档中的表格,及其所在的章节,普通的Document.paragraphs 和Document.tables无法满足需求。所以综合GitHub作者的代码及我自己的需求代码如下:from docx.document import Documentfrom docx.oxml.table import CT_Tblfrom docx.oxml.text.parag...

2020-03-17 09:55:52 7083 8

原创 C++学习历程14:友元

C++规则中,类的私有属性类外不可访问,如果想访问怎么办,就要用到友元,即让类外可以访问其私有属性。友元的三种实现 全局函数做友元 类做友元 成员函数做友元 1.全局函数做友元class Building{ //告诉编译器 goodGay全局函数 是 Building类的好朋友,可以访问类中的私有内容 friend void goodGay(Building * building);public: Building() { this->m_S

2020-07-31 19:45:53 187

原创 C++学习历程13:静态成员及this指针

1.属性和方法的存储方式只有非静态成员变量才属于类的对象上class Person {public: Person() { mA = 0; } //非静态成员变量占对象空间 int mA; //静态成员变量不占对象空间 static int mB; //函数也不占对象空间,所有函数共享一个函数实例 void func() { cout << "mA:" << this->mA << endl; } //静态成员函数也不占对象

2020-07-30 20:40:43 271

原创 C++学习历程12:构造和析构

1.构造析构的意义 构造函数:主要作用在于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,无须手动调用。 析构函数:主要作用在于对象销毁前系统自动调用,执行一些清理工作。 2.语法构造函数语法:类名(){} 构造函数,没有返回值也不写void 函数名称与类名相同 构造函数可以有参数,因此可以发生重载 程序在调用对象时候会自动调用构造,无须手动调用,而且只会调用一次 析构函数语法: ~类名(){} 析构函数,没有返回值也不写voi

2020-07-29 19:43:04 207

原创 VS2019如何在一个项目里写多个cpp文件并可以分别独立运行

一个项目里只允许一个main 函数作为程序运行入口。解决方法:注释掉其他不运行文件中的main函数

2020-07-28 21:53:42 15504 5

原创 C++学习历程11:封装

1.封装的意义 将属性和行为作为一个整体,表现生活中的事物 将属性和行为加以权限控制 意义1:在设计类的时候,属性和行为写在一起,表现事物。class Circle{public: //访问权限 公共的权限 //属性 int m_r;//半径 //行为 //获取到圆的周长 double calculateZC() { //2 * pi * r //获取圆的周长 return 2 * PI * m_r; }};类中的变量称为成员变量 又称

2020-07-27 18:31:34 102

原创 C++学习历程10:函数进阶

1.函数默认参数int func(int a, int b = 10, int c = 10) { return a + b + c;}//1. 如果某个位置参数有默认值,那么从这个位置往后,从左向右,必须都要有默认值//2. 如果函数声明有默认值,函数实现的时候就不能有默认参数int func2(int a = 10, int b = 10);int func2(int a, int b) { return a + b;}2. 占位参数//函数占位参数 ,占位参数也可以有

2020-07-16 19:46:57 115

原创 C++学习历程9:引用

1.使用语法: 数据类型 &别名 = 原名int main() { int a = 10; int &b = a; cout << "a = " << a << endl; cout << "b = " << b << endl; b = 100; cout << "a = " << a << endl; cout << "b = " <&lt

2020-07-16 19:33:54 114

原创 C++学习历程8:内存分区

1. 内存四区C++程序在执行时,将内存大方向划分为4个区域 代码区:存放函数体的二进制代码,由操作系统进行管理的 全局区:存放全局变量和静态变量以及常量 栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收 1.1 程序运行前在程序编译后,生成了exe可执行程序,未执行该程序前分为两个区域代码区:存放 CPU 执行的机器指令代码区是共享的,共享的目的是对于频繁被执行的程序,

2020-07-16 19:11:23 90

原创 C++学习历程7:结构体

1.结构体定义 struct 结构体名 变量名 struct 结构体名 变量名 = { 成员1值 , 成员2值...} 定义结构体时顺便创建变量 struct student{ //成员列表 string name; //姓名 int age; //年龄 int score; //分数}stu3; //结构体变量创建方式3 struct student stu1; //struct 关键字可以省略// 创建方式 stu1.name = "

2020-07-12 21:11:02 70

原创 C++学习历程6:指针

1.定义int main() { //1、指针的定义 int a = 10; //定义整型变量a //指针定义语法: 数据类型 * 变量名 ; int * p; //指针变量赋值 p = &a; //指针指向变量a的地址 cout << &a << endl; //打印数据a的地址 cout << p << endl; //打印指针变量p //2、指针的使用 //通过*操作指针变量指向的内存 cout &lt

2020-07-12 17:01:08 176

原创 C++学习历程5: 函数

1.定义int add(int num1, int num2){ int sum = num1 + num2; return sum;}2. 调用int main() { int a = 10; int b = 10; //调用add函数 int sum = add(a, b);//调用时的a,b称为实际参数,简称实参 cout << "sum = " << sum << endl; return 0;}a,b 为实际参数即实参

2020-07-12 16:41:47 88

原创 C++学习历程4: 数组

1.一维数组1.1 特点特点1:数组中的每个==数据元素都是相同的数据类型==特点2:数组是由==连续的内存==位置组成的1.2 定义方式1. ` 数据类型 数组名[ 数组长度 ]; `2. `数据类型 数组名[ 数组长度 ] = { 值1,值2 ...};`3. `数据类型 数组名[ ] = { 值1,值2 ...};`int score[10];int score2[10] = { 100, 90,80,70,60,50,40,30,20,10 };int sco...

2020-07-12 16:34:20 68

原创 C++学习历程3:程序结构

1.选择结构 cin >> score; // if else 会进一个if条件语句 if (score > 600) { cout << "我考上了一本大学" << endl; } else if (score > 500) { cout << "我考上了二本大学" << endl; }1.1 三目运算符c = a > b ? a : b; // if a>b:c=a;

2020-07-12 09:43:20 105

原创 C++学习历程2:

1.字符串定义方式 char str[] ="hello world"; cout << str << endl; string str1 = "Hi C++ learner"; cout << str1 << endl;#include <string> 有时需要。 VS2019不需要这个头文件也能使用string这个类型。2. Bool类型占空间大小 bool flag = true; cout <<.

2020-07-11 15:37:10 204

原创 c++学习历程1:

1.打印 hello world 及注释方法#include <iostream>using namespace std;void main(){ cout << "hello world" << endl; system("pause");}// 这是单行注释/*这是多行注释*/2. 常量的两种方式#include <iostream>using namespace std;#define jul 7 //没有;

2020-07-11 15:22:16 89

原创 我认为的python yield 关键字

在学习python时被yield搞晕了头,像是return又不像是return,所以自己研究了下。如有不对的地方还请大家谅解。def createGenerator(): mylist = range(3) for i in mylist: yield i*iobj = createGenerator() #一个迭代器但不执行print(obj.__nex...

2020-04-06 21:34:40 78

原创 Python openpyxl 实现修改表格,设置单元格数据缩进

如上篇博客所言,我要将word文档中表格的数据提取出来再粘贴到已有的表格中,xlsxwriter 只能写入一个新的表格,因此只能用 openpyxl来实现将提取出来的数据写入。具体代码如下:import openpyxlfrom openpyxl.styles import Alignmentfile_req ="req.xlsx"wb_req = openpyxl.load_wor...

2020-03-17 13:16:59 784

原创 “IDLE's subprocess didn't make connection. Either IDLE can't start a subprocess or personal firewall

写多线程程序时突然遇到IDLE无法打开错误提示如下:“IDLE's subprocess didn't make connection. Either IDLE can't start a subprocess or personal firewall software is blocking the connection.” 原因就是新建的程序中和python模块zhon中的名字一样...

2018-12-09 20:05:15 432

原创 不确定长度的一堆数据,选出出现频率最高的一个

原本打算选用数组这种数据结构用来存放数据,可是不确定识别出来直线的个数。想了很久决定用vector来实现 代码如下:其中push_back要push自己循环得到的数据。#include&lt;vector&gt;using namespace std;void main(){ vector&lt;int&gt; v1; for( int i = 0; i &lt; 5; i+...

2018-11-26 21:58:18 243

原创 c,c++中的排序算法

1.冒泡排序。解释:即从第一个元素依次和后面的元素比较,如果大则交换位置。例子:待排序数组:9,8,7,6第一轮排序,第一步:9&gt;8,二者交换位置后8,9,7,6                     第二步:9&gt;7,二者交换位置后8,7,9,6                     第三步,9&gt;6,二者交换位置后8,7,6,9第二轮排序:7.6.8....

2018-09-05 16:15:54 112

原创 详解字符串

学习了一段时间的c、c++,准备做一些相关的总结。随着学习的深入会经常改进博客。一、定义一个字符串的两种方式:1.用一个字符数组。2.用一个指针指向字符串。 char arr[20]={'c','h','i','n','a'}; char s[20]="shanghai"; char *z="beijing";二、打印出字符串的方式。 printf("...

2018-09-03 18:05:06 140

原创 关于vc6.0调用时间的两种方式

1.用MFC封装起来的库——c++语法。 CTime t = CTime::GetCurrentTime(); int nYear = t.GetYear(); int nMonth = t.GetMonth(); int nDay = t.GetDay(); int nHour = t.GetHour(); int nMin = t.GetMinute(); int nSec ...

2018-08-11 20:01:51 540

原创 关于MFC改完对话框命名,双击按钮无法关联

如图修改头文件中上述部分,即可双击按钮进入函数。

2018-08-10 19:17:36 456

原创 关于ClassWizard后在类列表没显示类怎么办?

比如创建了一个CQQDlg类,但是类列表没显示,只需要到该类的头文件QQDlg.h,随便删个东西再ctrl+z撤销就可以显示了。

2018-08-10 16:31:37 414

原创 cvCopy,cvCopyImage,cvCloneImage

cvCopyvoid cvCopy( const CvArr* src, CvArr* dst, const CvArr* mask=NULL );要先开辟内存给dst,src的数据复制到dst;cvCloneImageIplImage* cvCloneImage( const IplImage* image );例: IplImage*temp=cvCloneImage(image);用clon...

2018-05-11 20:12:34 358

吕鑫c++教学视频源代码

吕鑫c++教学视频源代码,对着代码看视频效果会更好。vc6.0平台

2018-11-09

吕鑫C语言教学vc6.0平台源代码

吕鑫C语言教学上课视频源代码。支持vc6.0平台直接打开

2018-11-09

吕鑫MFC教学视频中的源代码

该文件夹是吕鑫上课视频里的教学源代码,对着源代码看视频更有效率。MFC无疑大大提高开发的时间。

2018-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除