1.面向对象的三个特点:封装,继承,多态
2.(P83)
构造函数:在创建对象时,使用给定的值将对象初始化
析构函数:用来释放一个对象,在对象删除前,用它来做一些内存释放等清理工作,与构造函数的功能正好相反。
3.P84
构造函数的几个特点:
1)使系统在生成类时自动调用
2)定义的构造函数不能指定返回值的类型,也不能指定void类型
3)构造函数必须是公有型成员变量,否则类无法实例化
4.P85
析构函数只有在下列两种情况下会被自动调用:
1)当对象定义在一个函数体中,该函数调用结束后,析构函数被自动调用
2)用new为对象分配动态内存,当使用delete释放对象时,析构函数被自动调用。
析构函数不能重载
5.P88
浅拷贝和深拷贝
浅拷贝:仅仅将内存空间的内容拷贝的方式 int,float……用浅拷贝
深拷贝:在进行数值拷贝前,为指针类型的数据成员另辟一个独立的内存空间。还需要另辟内存空间的为深拷贝。 一般字符串用深拷贝
6.P96
友元函数:
关键字:friend
可以直接访问类的私有成员的非成员函数。它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字friend。
7.P101
常类型:使用类型修饰符const说明的类型,常类型的变量或对象的值不能被更新,此外,定义或说明常类型时必须进行初始化。
8.P104
this关键字:
this指针是一个仅能被类的非静态成员函数所访问的特殊指针,当一个对象调用成员函数时,编辑器先将对象的地址赋给this关键字,然后调用成员函数。
9.P110
派生类对象在创建时,先执行基类的构造函数,然后执行派生类的构造函数。但对于析构函数来说,其顺序正好相反,先执行派生类的析构函数,而后执行基类的析构函数。
10.P116
多态:
c++中多态性分为两种:编译时的多态性和运行时的多态性。
编译时的多态性是通过函数或运算符的重载来实现的。
运行时的 多态性是通过虚函数来实现的。
与这两种多态性相对应的两种编译方式为:静态联编和动态联编
11.P119
纯虚函数
声明纯虚函数的一般格式为:virtual<函数类型><函数名>(<形参表>)=0
抽象类是指至少包含一个纯虚函数的特殊的类,它本身不能被实例化,即不能声明一个抽象类的对象。必须通过继承得到派生类后,在派生类中定义了纯虚函数的具体实现代码,才能或得一个派生类的对象
12.纯虚函数与虚函数的区别:
http://blog.csdn.net/hackbuteer1/article/details/7558868
13.大题:
正方体求体积,圆求体积(作业本上的题)
求语数英 的学生成绩