1.构造函数(为了初始化)
构造函数是特殊的成员函数,需要注意的是,构造函数虽然名称叫构造,但是构造函数的主要任务并不是开空间创建对象,而是初始化对象。
其特征如下:
(1)函数名和类名相同
(2)参数可有可无,无返回值
(3)对象实例化时,编译器自动调用对应的构造函数
(4)构造函数可以重载----一个类可以有多个构造函数
编译生成默认构造的特点:
1.自己写了就不会生成构造函数,自己不写才会生成默认构造
2.内置类型(基本数据类型 指针也是)的成员不会处理
3.自定义类型的成员才会处理,回去调用这个成员的默认构造函数
值得注意:
在类中写无参构造函数、全缺省的构造函数,也称为默认构造函数,但编译器只能调用一个默认构造函数,当我们既写无参又写全缺省多个并存时,会造成调用二义性,编译器会报错,产生冲突。
--------------------------------------------------------------------------------------------------------------------
2.析构函数(为了清理)
析构函数是特殊的成员函数,与构造函数功能相反,析构函数不是完成对对象本身的销毁,局部对象销毁工作是由编译器完成的。而对象在销毁时会自动调用析