类的特殊成员函数
特殊成员函数的难点在于它们何时被调用,以及可能产生的一些问题。
构造函数
每个类都有自己的构造函数,即使一个构造函数都没定义,编译器也会自动生成默认构造函数。构造函数下面有细分的种类:
- 构造函数
每个对象创建时,都会调用构造函数。如果对象是封闭类,那么生成一个对象时,先调用成员对象类的构造函数,再调用本对象类的构造函数,此时最好用初始化参数列表。
A(); //没有参数,是默认构造函数
A(int a = 0); //这个也是默认构造函数,但是当所有参数都可以缺省时,与上面的不可共存。
A(double b = 0.0) //这个是构造函数
...
复制构造函数
类型转换构造函数
析构函数
静态成员函数和变量
常量成员和函数