在创建一个类的时候C++编译器会至少提供三个函数(用户没有自己定义构造函数的情况下),默认构造函数(无参,函数体为空)、默认析构函数(无参,函数体为空)、默认拷贝构造函数,对类的属性进行值拷贝(浅拷贝)。
调用原则:1、当用户只定义了有参构造函数,C++不会提供默认构造函数,但是默认拷贝构造函数依然提供。
2、当用户只定义了拷贝构造函数,C++不会提供其他构造函数。
class Test { Test();//构造函数 Test(int a);//有参构造函数 Test(const Test a);//拷贝构造函数 ~Test();//析构函数 };