参考了:点击打开链接以及《高质量程序设计指南C++/C语言》
说明
拷贝构造函数是一种特殊的构造函数。相同类型的类对象是通过拷贝构造函数来完成整个复制过程的。
函数的名称必须和类名称一致。
它的参数是唯一的,该参数是const类型的引用变量。例如
类X的拷贝构造函数的形式为X(X& x)。
Q:为啥拷贝构造函数的参数必须是同类对象的引用,而不能是值传递?
请看下面的例子:
class A{
public:
A(A copy); //(1)
A(const& other); //(2)
// ...
};
A a1;
A a2 = a1;