1.用类的一个对象初始化另一个对象
cat cat1;
cat cat2(cat1);//创建 cat2时系统自动调用拷贝构造函数,用cat1初始化cat2
2.用类的一个对象初始化另一个对象时的另外一种形式
cat cat2=cat1;//注意并非 cat cat1,cat2;cat2=cat1;
3.对象作为函数参数传递时
f(cat a){}
cat b;
f(b);//进行f函数调用时,系统自动调用拷贝构造函数
4.函数的返回值是类的对象,函数调用返回时,调用拷贝构造函数
cat f(){cat a;...return a;} //返回值为cat类
cat b; //定义对象 b
b=f(); //调用f函数,系统自动调用拷贝构造函数