- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 解决 Beyond Compare 4 提示“这个授权密钥已被吊销”
一.首先尝试下这三种方法:https://blog.youkuaiyun.com/weixin_38345306/article/details/109175632二.如果还提示“这个授权密钥已被吊销”,则是因为之前输入过密钥。这时候,找到D:\Program Files\Beyond Compare 4程序目录下的 BCState.xml 和 BCState.xml.bak。两种方法:彻底删除这两个软件(比如用360强制删除),防止其再生成在两个文件中随便输入中文,确保程序会读取失败,重启软件即可..
2021-03-10 09:26:15
2196
原创 [读书笔记] C++Primer (第5版) 第19章 特殊工具与技术
1.控制内存分配(new和delete):new表达式执行的三个步骤:调用一个名为operator new或operator new[]的标准库函数,该函数分配一块足够大的、原始的、未命名的内存空间,以便存储特定类型的对象或对象数组。编译器运行相应的构造函数来构造这些对象,并传入初始值。对象被分配了空间并构造完成,返回一个指向该对象的指针。delete表达式执行的两个步骤:对所指的对象或数组中的元素执行对应的析构函数编译器调用operator delete或operator delete
2020-07-06 08:10:27
237
原创 [读书笔记] C++Primer (第5版) 第18章 用于大型程序的工具
1.异常处理:异常处理机制允许程序中独立开发的部分能够在运行时就出现的问题,进行通信并作出相应处理。当执行一个throw时,跟在throw后面的语句将不再被执行(类似return)。程序的控制权从throw转移到与之匹配的catch模块。栈展开:当throw出现在一个try语句块内中,寻找与此try关联的catch语句。找不到的话就到外层的try中找。如果找不到匹配的catch,则程序调用标准库函数terminate来终止程序的执行过程。...
2020-07-01 08:13:02
259
原创 [读书笔记] C++Primer (第5版) 第17章标准库特殊设施
1.tuple类型:每个tuple的成员类型可以都不相同,可以有任意数量的成员。tuple<string, vector<double>, int> someVal("Contants", {2.1, 3.6, 9}, 32);pair总有两个成员(first和second),tuple的成员个数不确定,所以不能用这种方式访问。要访问tuple的成员,就要使用名为get的标准库函数模板。auto nVal = get<2>(someVal); //
2020-06-26 14:28:20
320
原创 [读书笔记] C++Primer (第5版) 第16章 模板与泛型编程
1.函数模板:一个公式。template关键字开始,后跟一个模板参数列表,以逗号分割的一个或多个模板参数。 template 编译器用推断出的模板参数来为我们实例化。这些编译器生成的函数版本通常被称为模板的实例(函数的形参为int,这个函数就是实例)。typename:模板类型参数。可以用来指定返回类型或函数的参数类型。就像内置类型或类类型说明符一样使用。也可以使用class代替。非模板参数:一个非类型参数表示一个值而非一个类型。当一个模板被实例化时,非类型参数被一个用户提供的或编译
2020-06-22 15:58:40
235
原创 [读书笔记] C++Primer (第5版) 第15章 面向对象程序设计
Mon 06Mon 13已完成 进行中 计划中 现有任务Adding GANTT diagram functionality to mermaid
2020-06-15 08:10:47
252
原创 [读书笔记] C++Primer (第5版) 第14章重载运算与类型转换
1.重载运算符基本概念:重载运算函数如果是非成员的,则参数数量与该运算符作用的运算对象一样多。如果是成员函数,则运算符的第一个(左侧)运算对象绑定到隐式的this指针上。一个运算符函数,它或者是类的成员,或者至少含有一个类类型的参数。当运算符作用于内置类型的运算对象时,我们无法改变该运算符的含义。只能重载已有的运算符,无权发明新的。优先级和结合律与对应的内置运算符保持一致。不能被重载的运算符: :: , . ?:*data1+data2; 非成员函数等价的调用为
2020-06-10 17:22:28
234
原创 [读书笔记] C++Primer (第5版) 第13章 拷贝控制
拷贝构造函数 用同类型的另一个对象初始化本对象会做什么 拷贝赋值函数 将一个对象赋予同类型的另一个对象会做什么 移动构造函数 同拷贝构造 移动赋值函数 同拷贝赋值 析构函数 当此类型对象销毁时做什么 称这些操作为拷贝控制操作。1.拷贝构造函数: Foo(const &Foo); // 拷贝构造函数:第一个参数是自身类型的引用,且任何额外参数都有默认值 可以是非const的,但一般总是const。 必须是引用。在...
2020-06-06 11:14:36
197
原创 [读书笔记] C++Primer (第5版) 第11章 关联容器
关联容器中的元素是按关键字来保存和访问的,顺序容器中的元素是按顺序和位置保存和访问的。1.
2020-06-01 21:09:20
208
原创 [读书笔记] C++Primer (第5版) 第9章 顺序容器
顺序容器 名称 支持 性能 vector 可变大小数组 快速随机访问 在尾部之外的位置插入或删除元素可能很慢 deque 双端队列 快速随机访问 在头尾位置插入/删除速度很快 list 双向链表 只支持双向顺序访问 任何位置插入/删除速度都很快 forward_list 单向链表 只支持单向顺序访问 任何位置插入/删除都很快 array 固定大小数组 支持快速随机访问 不能添加/删
2020-05-26 19:09:25
265
原创 [读书笔记] C++Primer (第5版) 第8章 IO标准库
头文件 类型 iostream isstream,wistream:从流读取数据 ostream,wostring:向流写入数据 iostream,wiostream:读写流 fstream ifstream,wifstream:从文件读取数据 ofstream,wofstream:向文件写入数据 fstream,wfstream:读写文件 sstream istringstream,wistringstream:从stri
2020-05-24 17:06:34
191
原创 [读书笔记] C++Primer (第5版) 第7章 类
struct Sale_data{std::string isbn() const {return bookNo; }std::string bookNo;}1.函数调用类内定义的函数是隐式的inline函数。Sale_data data;data.isbn();调用成员函数时,实际是在为data调用。成员函数通过this(额外的隐式参数)来访问data。编译器负责把data的地址传递给isbn的this。this(常量指针)不允许改变this中保存的地址。常量成员函数:列表后面有c
2020-05-24 14:59:03
167
原创 MFC动图(GIF)的实现(GDI+Image)
1.添加定时器 SetTimer(UINT_PTRnIDEvent, UINTnElapse,void(CALLBACK*lpfnTimer)(HWND,UINT,UINT_PTR,DWORD)) 参数1:定时器编号 参数2:定时器时间间隔,毫秒为单位。 参数3:定时器的回调函数(传参为NULL时可以使用WM_TIME的响应函数OnTimer(nIDEvent)函数)。 例如定时器的时间间隔为300毫秒。则动图就是每300毫秒换一个画面。...
2020-05-23 10:20:55
1377
转载 MFC中的Invalidate、OnDraw、OnPaint函数
void Invalidate( BOOL bErase = TRUE );该函数的作用是使整个窗口客户区无效,窗口的客户区无效意味着需要重绘。例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘...
2018-11-22 11:09:45
1414
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人