随笔分类 -  c++

CString 的成员函数详解
摘要:CSTRING的成员函数详解 typedef ATL::CStringT< TCHAR, StrTraitMFC_DLL< TCHAR > > CString;CString的构造函数:1 CString( );2 CString( const CString& stringSrc );3 CStr 阅读全文
posted @ 2019-06-12 15:32 Malphite 阅读(1964) 评论(0) 推荐(0) 编辑
c++ CArray函数
摘要:CArray属于MFC,是一个数组模板类。MFC的数组类支持的数组类似于常规数组,可以存放任何数据类型。常规数组在使用前必须将其定义成能够容纳所有可能需要的元素,即先确定大小,而MFC数组类创建的对象可以根据需要动态地增大或减小,数组的起始下标是0,而上限可以是固定的,也可以随着元素的增加而增加,数 阅读全文
posted @ 2019-06-12 14:08 Malphite 阅读(2995) 评论(0) 推荐(0) 编辑
Google C++ 风格指南
摘要:Google 开源项目风格指南 Google c++编码规范中文版 阅读全文
posted @ 2019-06-12 13:16 Malphite 阅读(558) 评论(0) 推荐(0) 编辑
c++基本知识
摘要:new 创建的对象位于堆区,通过 delete 删除时才会调用析构函数;如果没有 delete,析构函数就不会被执行。 C++ this指针详解 this指针几点注意:this 是 const 指针,它的值是不能被修改的,一切企图修改该指针的操作,如赋值、递增、递减等都是不允许的。this 只能在成 阅读全文
posted @ 2019-05-18 22:56 Malphite 阅读(376) 评论(0) 推荐(0) 编辑
学习
摘要:https://github.com/imhuay/Algorithm_Interview_Notes-Chinese rtmp 阅读全文
posted @ 2019-03-08 15:01 Malphite 阅读(162) 评论(0) 推荐(0) 编辑
嵌入式学习网站
摘要:c/c++: http://c.biancheng.net/ shell/db/c/c++:在线编辑学习 http://www.tutorialspoint.com/ 阅读全文
posted @ 2018-12-29 15:09 Malphite 阅读(379) 评论(0) 推荐(0) 编辑
C++ 第九天
摘要:day09#include <iostream>using namespace std;class A{ public: virtual void fooa(int x){ cout << "fooa(int)" << endl; cout << x << endl; } virtual void 阅读全文
posted @ 2018-12-02 14:42 Malphite 阅读(176) 评论(0) 推荐(0) 编辑
C++ 第八天
摘要:day8一、 多态的底层实现 虚函数 加了virtual修饰的成员函数 虚函数表指针 一个类型只要有虚函数 则这个类型就有一张虚函数表。 同类型的对象共享一张虚函数表 虚函数表 每个元素都是虚函数的地址 当父类型指针 指向子类对象时 先根据对象地址中的前四个字节找到虚函数表的地址 然后根据虚函数表地 阅读全文
posted @ 2018-11-25 21:53 Malphite 阅读(128) 评论(0) 推荐(0) 编辑
C++ 第七天
摘要:day07一、继承中构造和析构的调用 1.1调用顺序 构建子类对象时 一定会先调用父类的构造函数 再调用自己的构造函数 析构函数的调用和构造函数调用的顺序相反。 #include <iostream> using namespace std; class A{ public: A(){ cout < 阅读全文
posted @ 2018-11-18 23:19 Malphite 阅读(203) 评论(0) 推荐(0) 编辑
C++ 第四天
摘要:一、this指针 1.1 什么是this 指针 指向当前对象的指针 构造函数中this指向正在被构建的对象首地址 成员函数中 this代表调用这个函数的对象的首地址 1.2 this指针的应用 区分成员变量 和函数参数 this 可以作为函数参数 this 可以作为返回值(实现连续操作)二、cons 阅读全文
posted @ 2018-11-04 15:17 Malphite 阅读(181) 评论(0) 推荐(0) 编辑
c++ 编译报错汇总(随时更新)
摘要:1、invalid new-expression of abstract class type ‘×××ב 这个报错代表一个尝试在实例化一个抽象类,也就是说父类的接口中有纯虚函数在子类中没有实现; 举例: 这样编译就会报错,子类中必须要实现所有父类里面定义的纯虚函数 正确方式如下: 2:error 阅读全文
posted @ 2018-11-04 10:45 Malphite 阅读(912) 评论(0) 推荐(0) 编辑
C++ 第二天
摘要:函数参数的默认值 一个函数在定义或者声明时 可以给参数指定默认值,那在调用这个函数时 如果不给这个参数传实参则使用默认的参数值, 如果传入参数值 则使用传入的值替代默认的值。 作用:减少函数的个数 方便调用 限制:参数的默认值,必须靠右 一个参数有默认值,则参数右边所有参数必须都有默认值 当函数的声 阅读全文
posted @ 2018-11-03 22:31 Malphite 阅读(187) 评论(0) 推荐(0) 编辑
C++ 第三天
摘要:一 、 c++ 给c程序员的建议 1.1 尽量的少使用宏 多使用 枚举 const inline 1.2 变量随时用随时定义 保证这些变量可以及时的初始化 1.3 动态内存分配时 使用new delete 少使用malloc free 1.4 少使用c风格的字符串 多使用string 1.5 少使用 阅读全文
posted @ 2018-11-03 22:30 Malphite 阅读(226) 评论(0) 推荐(0) 编辑
c++ 继承(二)
摘要:不能自动继承的成员函数 1、构造函数 2、析构函数 3、=运算符 继承与构造函数 1、基类的构造函数不被继承,派生类中需要声明自己的构造函数 2、声明构造函数时,只需要对本类中新增成员进行初始化,对继承来的基类成员的初始化(调用基类构造函数完成) 3、派生累的构造函数需要给基类的构造函数传递参数 注 阅读全文
posted @ 2018-10-24 00:13 Malphite 阅读(492) 评论(0) 推荐(0) 编辑
c++ 继承(一)
摘要:代码重用 c++很重要的一个特征就是代码重用。在c语言中重用代码的方式就是拷贝代码、修改代码。c++可以用继承或组合的方式来重用。通过组合或继承现有的类来创建新类,而不是重新创建他们。 (一)组合 组合就是将一个类作为另一个类的对象成员。功能通过委托来实现 (二)继承 1、继承时使用已经编写好的类来 阅读全文
posted @ 2018-10-23 00:09 Malphite 阅读(11464) 评论(0) 推荐(0) 编辑
c++ 类图
摘要:https://baijiahao.baidu.com/s?id=1609647985519542865&wfr=spider&for=pc 阅读全文
posted @ 2018-09-11 23:22 Malphite 阅读(775) 评论(0) 推荐(0) 编辑
转:C++ 类的静态成员详细讲解
摘要:在C++中,静态成员是属于整个类的而不是某个对象,静态成员变量只存储一份供所有对象共用。所以在所有对象中都可以共享它。使用静态成员变量实现多个对象之间的数据共享不会破坏隐藏的原则,保证了安全性还可以节省内存。 静态成员的定义或声明要加个关键static。静态成员可以通过双冒号来使用即<类名>::<静 阅读全文
posted @ 2018-05-16 11:22 Malphite 阅读(213) 评论(0) 推荐(0) 编辑
STL string
摘要:string string对象的定义和初始化 示例代码: #include <string> #include <iostream> using namespace std; void fun(char *str) { cout << str << endl; } int main(void) { 阅读全文
posted @ 2017-11-14 00:00 Malphite 阅读(90) 评论(0) 推荐(0) 编辑