【c++中深拷贝与浅拷贝的区别】教程文章相关的互联网学习教程文章

C++拷贝构造函数:浅拷贝与深拷贝【图】

在介绍C++浅拷贝与深拷贝之前,我们先引出C++的拷贝构造函数。C++拷贝构造函数是一种特殊的构造函数,其形参是本类对象的引用。用于在建立一个新的对象时,使用一个已经存在的对象来初始化这个新对象。因为拷贝构造函数时特殊的构造函数,所以其没有返回值类型,且名称与类名相同;该函数只有一个参数,即此类对象的引用;所有类都必须有一个拷贝构造函数,如果没有自动以拷贝构造函数,系统会自动产生一个默认拷贝构造函数。自定义...

C++ 浅拷贝和深拷贝【代码】【图】

拷贝构造函数默认的是浅拷贝。当不涉及到堆内存时用浅拷贝完全可以,否则就需要深拷贝了。 浅拷贝相当于一个箱子有多个钥匙,但其中一个人打开箱子取走箱子里的东西时,其他人是不知道的。 深拷贝是有多个箱子每个箱子对应一个钥匙,但一个人取走他的钥匙对应的箱子里的东西时,不会对其他人产生影响。 1 #include <bits/stdc++.h>2 3 using namespace std;4 5 class A{6 public:7 A() {8 cnt1++;9 name = n...