我有一个带有 Point *array 字段的对象 PointArray。我想制作一个复制构造函数:
PointArray::PointArray(const PointArray &pv) {
size = pv.size;
array = new Point[size];
for (int i=0;i<size;i++){
Point toAdd = Point(pv.array[i].getX(), pv.array[i].getY());
array[i] = toAdd;
}
}
这是正确的吗?
答案 0 :(得分:0)
这是正确的吗?
这取决于。
您设计的复制构造函数应该如何工作?你的构造函数的行为如何?它的行为是否符合您的预期?你的类的不变量是什么?那些不变量是作为构造函数的后置条件维护的吗?
一些问题:
std::copy
。new
。std::vector
的有限版本。