深拷贝和浅拷贝
- 深拷贝是指,在拷贝对象时复制对象所有的成员变量和成员函数,包括指针指向的动态分配的内存。这样拷贝出来的对象和原对象是完全独立的,对任意一方操作,另一方不会受到影响;
- 浅拷贝是指,在拷贝对象是只复制对象的成员变量,不会复制指针指向的动态分配的内存。这样拷贝出来的对象,它的指针成员变量和原对象是一块内存,操作任意一方都会修改这块内存,另一方也会受到影响。
所以浅拷贝之后再对任一对象操作,很容易出现内存泄漏或者悬空指针的问题。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment