拷贝构造函数,是一种特殊的构造函数,由编译器调用来完成一些基于同一类的其他对象的构建及初始化。其唯一的参数(对象的引用)是不可变的(const类型)。此函数经常用在函数调用是用户定义了性的值传递以及返回。拷贝构造函数要调用基类的拷贝构造函数和成员函数。
拷贝构造函数是用类的对象来给此类的另外一个对象赋值,所以构造函数的参数的类的对象。class A { public:A(const A & a); //拷贝构造函数;};加const,防止拷贝构造函数修改形参的值;加引用,避免实参传递给形参时的值复制,提高效率。
流操作符<<和>>、赋值操作符=的返回值、拷贝构造函数的参数、赋值操作符=的参数、其它情况都推荐使用引用。相关知识点: 试题来源: 解析 答案:都是在堆(heap)上进行动态的内存操作。用malloc函数需要指定内存分配的字节数并且不能初始化对象,new会自动调用对象的构造函数。delete会调用对象的detructor,而free不会调...