拷贝构造函数
知识点一:在类中声明拷贝构造函数的书写形式(以类2的数据拷贝给类1为例)
类1的类名( 类1的类名[const] & 类2的类名 )
{…}
例如:
注意:1.默认的构造函数是原原本本的复制,但也可以改,比如要求新的类是被复制类中数据的2倍
例如:
2.main函数里用拷贝构造时有两种形式
后两种意义一样,只是形式不同
知识点二:系统会调用拷贝构造函数的三种情况:
1.在同一个类中,已经创建了一个对象a,再创建对象b时若需要对象a的值对对象b初始化时,会调用拷贝构造函数对对象b初始化
例如:
2.对于一个普通的函数,当该函数的参数为某个类的对象时,会调用该类的拷贝构造函数,例如:
3.对于一个普通函数,当该函数的返回值是某个类的对象时,会调用该类的拷贝构造函数,例如: