
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
“这个世界都是由代码组成的。”这是程序员的格言,随着互联网的快速发展,世界已经进入了电子信息时代,而程序员也成为了新时代产业下所产生的火热职业,现在大学都会开放一门变成的基础课,C语言。这对于大学生逻辑思维具有很棒的好处,同样对于要入门编程大海的未来的程序员,也是一个很棒的入门机会,今天烟台C#培训小编就为大家带来,C语言程序设计基础,希望大家喜欢!
对象复制与移动
深层复制
当被复制的对象数据成员是指针类型时,不是复制该指针成员本身,而是将指针所指对象进行复制;
需要手写复制构造函数.
class ArrayOfPoints { //动态数组类
public:
ArrayOfPoints(int size) : size(size){ //构造函数
points = new Point[size]; //创建动态数组
}
~ArrayOfPoints() { //析构函数
delete[] points;
}
private:
Point *points; //指向动态数组首地址
int size; //数组大小
}
ArrayOfPoints::ArrayOfPoints(const ArrayOfPoints& v) {
size = v.size;
points = new Point[size]; //重新申请动态分配
for (int i = 0; i < size; i++)
points[i] = v.points[i]; //挨个复制
}