37.c++深拷贝与浅拷贝

2019-07-21  本文已影响0人  saygoodbye_e92e
37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝

编译器默认生成一个拷贝函数,就是浅拷贝

37.c++深拷贝与浅拷贝

浅拷贝在一些情况下会有问题,如下

37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝

这时候我们会发现一个问题,堆区开辟的数据有程序员手动开辟,也由程序员手动释放,那么数据在什么时候释放呢?在析构函数中

37.c++深拷贝与浅拷贝

释放内存,同时防止野指针的出现

我们运行一下,发现崩掉了

37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝 37.c++深拷贝与浅拷贝

发现正常

37.c++深拷贝与浅拷贝
上一篇 下一篇

猜你喜欢

热点阅读