C++从零开始的打怪升级之路(day16)
这是关于一个普通双非本科大一学生的C++的学习记录贴
在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料
那么开启正题
今天分享的内容是string类的模拟实现
当然string类里面有100多个函数,我们不可能将其完整得实现出来(太耗时了),最主要是实现string类的构造、拷贝构造、赋值运算符重载以及析构函数
1.关于深浅拷贝
1.1浅拷贝
浅拷贝又叫做值拷贝(位拷贝),编译器只是将对象中的值拷贝过来,如果对象中管理资源,最后就会导致多个对象共享同一份资源,当一个对象销毁就会将该共享的资源销毁,而另一些对象不知道资源已经被释放,所以继续对该资源进行操作的时候,就会发生访问违规
1.2深拷贝
深拷贝可以解决浅拷贝的问题,每个对象都有独立空间,不和其他共享
如果是一个类中涉及到资源的管理,其构造函数,拷贝构造函数,赋值运算符重载以及析构函数就必须显式给出,一般都是按照深拷贝的方式提供
2.
原文地址:https://blog.csdn.net/2301_80764270/article/details/135723745
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!