第一章 类: 1. 类的两种定义形式: (1)在类中定义成员函数; (2)在类之后定义成员函数(类定义的文件为(头文件),类成员函数的实现为另一个文件)。 2. class 和 struct 的区别: (1)C 中的 struct 与 C++中 struct 的区别: C 的 struct 没有方法,而 C++的 struct 可以有方法 // 即函数 C 的 struct 中成员没有访问控制权限,C++的 class 则有,且默认 private C 的 struct 不能为空,而C++的 struct 则可以为空,大小为 1。 C 的 struct 是在定义的时候就给数据成员开辟了空间,C++的 class 是在定义类对象的时候才开辟的空间,virtual 会加上 4 个字节的空间(不限个数), (2)C++中 class 与 struct 的区别: class 中成员默认的访问控制权限是 private,而 struct 则默认的是 public 3. 类:类是一种抽象的数据结构,用来描述对象的属性,是将不同数据类型的数据以及与这些数据相关的操作封装在一起的集合体。(封装性) 4. 面向过程与面向对象程序设计的不同: (1)过程是基于算法的,而对象是基于类的; (2)过程是以函数(过程)的设计来实现的,而对象是以类的设计来实现的; (3)过程通过数据流图(流程图)来体现的,而对象是通过类图(用例图)来体现的; (4)过程需要将步骤一步一步的具体化,而对象则只注重类的设计,不管实现方法。 5. 面向对象的四大特点:抽象、封装、继承、多态 6. OOP :面向对象编程 OOD:面向对象设计 OOA:面向对象分析 OOI:面向对象接口 7. 内联函数(inline): (1)将类中的语句只有1~5 句的且没有 swith 语句的成员函数一般称为内联函数,用inline 标示。内联函数在运行时在源程序中原地扩展.(在类中定义的成员函数一般被默认为内联函数) (2) 内联与预处理的区别: ○1 宏是预处理命令,inline则是个函数 ○2 宏是在预编译时进行替换,而 inline在执行到这一句时才替换 ○3 宏在替换时不做类型检测,而 inline则要做类型检测 ○4 宏会出现二义性, inline则不会出现 ○5(3)内联函数节省了调用时间,但增加了存储空间 宏占编译时间,inline则占运行时间 普通函数节省了存储空间,但增长了调用时间 8. 一个类的对象所占空间的大小由它的数据成员所占据的空间总和决定;当类有virtual 函数时,再加上 4 个字节的大小。 9.访问控制权限: (1)publi...