1. 首页
  2. 编程语言
  3. C
  4. C++深拷贝与浅拷贝的区别及应用

C++深拷贝与浅拷贝的区别及应用

上传者: 2022-02-07 22:20:48上传 PDF文件 66.57 KB 热度 20次

只是对指针的拷贝,拷贝后两个指针指向同一个内存空间;对指针指向的内容进行拷贝,经深拷贝后的指针是指向不同地址的指针;只拷贝指针对资源进行拷贝写一个Vector的类可以用自己编辑器,把拷贝放进去试试;浅拷贝:简单的赋值拷贝操作;深拷贝:在堆区重新申请空间,再进行拷贝操作;问题:浅拷贝会带来堆区内存被重复释放的问题,析构函数被调用多次,导致程序运行崩溃;解决:通过深拷贝解决,在堆区重新申请内存,各自释放自己的内存,避免重复释放;程序运行结果:

用户评论