1.今天是看第二个视频,效率还行,看了两天。。。o(╯□╰)o算有长进了。因为都是基础知识,之前也有所了解,所以听起来不费劲。稍作总结。
2.C++的三个特性:
封装:强调的是数据的封装以及方法
继承:子类继承父类;派生类继承基类。一样的。
父类中的方法有三种状态public、private和protected。前两种很容易,第三种比较特殊。当父类中一个方法为protected时,继承它的子类可以使用父类的protected方法,但在类外部不可以使用protected方法。
继承也有三种方式public、private和protected。public继承时,public-public、protected-protected、private-No access;
protected继承时,public-protected、protected-protected、private-No access;private继承时,public-private、protected-private、private-No access。
多态性:virtual虚函数
3.在C++中,结构体和类是可以通用的,即在结构体中也可编写方法。区别在于结构体中的数据默认是public,而类中的数据默认是private。
4.this指针:每一个类都有一个默认的this指针,它指向类的对象的首地址。this可以用于区分方法中参数与成员变量重名的情况。this->
5.函数重载:构成条件——函数的参数类型、参数个数不同,才能构成函数的重载。
6.构造函数:(1)取名为类名;(2)没有返回值。每个类都有一个构造函数,即使用户没有编写,系统也会自动调用一个。
实例化对象后,先调用父类构造函数,再调用子类构造函数。
析构函数:(1)取名为类名,取反“~”;(2)没有返回值。对象生命周期结束,用于内存回收。
结束对象后,先调用子类析构函数,再调用父类析构函数。
7.函数的覆盖:函数的覆盖发生在父类和子类之间。覆盖函数与被覆盖函数只有函数体不同,其他函数名、参数及类型都必须保持一致。派生类的对象在调用时,只会调用子类中的覆盖函数,而不是父类中被覆盖函数。
8.虚函数:关键词“virtual”,父类和子类中的同名的函数,父类方法前有virtual,那么,子类中有函数先调用子类的,子类没有再调用父类的。
9.纯虚函数:不具体实现的虚函数,=0,无函数体。
含有纯虚函数的类是不能实例化对象的。基类可以先用纯虚函数给出名称,再在派生类中进行实现。
10.引用:变量的别名,在定义时就要初始化。
11.重命名文件:按F2.
12.预编译指令:
#ifndef xxxx 如果没有定义xxxx
#define xxxx 继续往下执行
#endif
13.头文件不参与编译。
14.That's all。