1.在类体中不能对数据成员直接进行初始化
2.一般数据成员由小到大进行声明,可以提高空间利用率
3.由同一个类创建的对象的数据结构是相同的,类中的成员函数是共享的,数据成员的值一般是不同
构造函数特点:
1.构造函数是成员函数,可以写在类体内外。
2.与类名字相同构造函数不指定类型说明,由隐含的返回值
3.构造函数可以重载
4.创建对象时自动调用构造函数
析构函数特点:
1.类体内外
2.名字与类名相同,前面加~号,不指定数据类型,并且也没有参数
3.一个类中只能有一个析构函数
4.系统自动调用析构函数:对象生命周期结束时,delete时
(这句话不太理解):使用系统默认构造函数给对象初始化时,外部类对象和静态类对象的所有数据成员为默认值,自动类对象的所有数据成员为无意义值。
拷贝构造函数:
用一个已知对象创建一个位置对象的时候调用,默认拷贝构造函数是数据成员的一一复制。
定义格式
<类名>::<拷贝构造函数名>(<类名>&<引用名>)
场合:
1.用已知对象创建未知对象时
2.作为形参传入函数时,函数不能以引用作为实参