#include <iostream>
using namespace std;
class Test
{
public:
//构造函数 无参构造函数 默认构造函数
//
Test()
{
a = 10;
}
//带参数的构造函数
//调用方法3中
Test(int mya)
{
a = mya;
}
//第三中初始化对象的方法
//赋值构造函数 copy构造函数
//copy构造函数的用法 4中应用场景
Test(const Test & obj)
{
;
}
private:
int a;
};
void main()
{
//1 ()
Test t1(10); //c++默认调用有参构造函数 自动调用
// =
Test t2 = 11; //c++默认调用有参构造函数自动调用
//手工调
Test t3 = Test(12); //我们自己手动调用构造函数
system("pause");
}
1 当类中没有定义任何一个构造函数时,c++编译器会提供无参构造函数和拷贝构造函数
2 当类中定义了任意的非拷贝构造函数(无参、有参),c++编译器不会提供无参构造函数
3 当类中定义了拷贝构造函数时,c++编译器不会提供无参数构造函数
4 默认拷贝构造函数成员变量简单赋值
总结:只要你写了构造函数,那么你必须用。