classPerson{public:Person()//无参构造{
cout<<"Person 无参构造函数的调用"<<endl;}Person(int a)//有参构造{
age=a;
cout<<"Person 有参构造函数的调用"<<endl;}Person(const Person &p)//拷贝构造{
age=p.age;
cout<<"Person 拷贝构造函数的调用"<<endl;}~Person(){
cout<<"Person 析构函数的调用"<<endl;}int age;};voidtest01(){1.括号法:
//在栈上的数据,test01执行完毕后,释放这个对象
Person p1;//默认构造函数的调用
Person p2(10);//有参构造函数的调用
Person p3(p2);//拷贝构造函数的调用2.显示法:
Person p1;//默认构造函数的调用
Person p2=Person(10);//有参构造函数的调用
Person p3=Person(p2);//拷贝构造函数的调用3.隐式转换法:
Person p4=10;//默认构造函数的调用
Person p5=p4;//拷贝构造函数的调用}intmain(){test01();system("pause");return0;}