练习源码及最新更新详见my github
inline(内联)函数
- 函数在class本体内定义自动形成inline
- 如果在class外部定义就不是inline
- inline function的优点
- 快,好
- 在class外部定义的函数可通过inline实现内联,但具体是否完成内联仍然由编译器决定
access level(访问级别)
- public共有成员
- 存储大部分函数
- private私有成员
- 多用来存放数据
- protect保护成员
- 为了保证数据的封装性,尽量通过函数来访问数据,不要在外部直接访问类内的数据。
constructor(ctor,构造函数)
- 构造函数在对象创建时自动调用
- 构造函数名称与类名相同
- 构造函数可以拥有参数
- 构造函数的参数是可以有默认值的
complex (double r = 0, double i =0) - 构造函数不需要有返回类型
- re (r) 与 double re; re = { re = r; }的区别
- 变量的设定有两个阶段,一个是初始化,另一个是赋值,re(r)是在初始化的时候直接进行赋值,效率更高
ctor(构造函数)可以有很多个-overloading(重载)
- 利用构造函数实现各种不同的便利功能
- 设定初值,提供默认值,设定加减运算
- 重载过后的构造函数虽然原函数名相同,但是在编译器中的名称并不同,所以他们根本上是不同的