copy constructor:
classname (const classname &obj)
{
//body of constructor
}
class Box
{
public:
Box(double len); // simple constructor
Box (const Box &obj); // copy constructor
double length;
}
Box:Box(double len)
{
length=len;
}
Box:Box(const Box &obj)
{
length=obj.length;
}
之后才可以进行赋值运算:
Box box1(11.1);
Box box2=box1;
cout << box2.length ;
此处需要说明的是:
若length为private,则在最后输出阶段不能用box2.length,需要用到其他函数(getlength等)与外界交互,但在copy constructor中依旧可以用obj.length