c++的浅拷贝与深拷贝其实不要想的太复杂,浅拷贝相当与两个变量间的赋值,如 a = b;*p =*q,但是当存在指针时,如果简单的赋值,说明指针p和q指的是同一片内存,虽然输出值一样,但是当这段内存被释放时,其中一个指针就成了野指针,造成内存泄漏,解决这个问题就需要用到深拷贝,深拷贝指的是拷贝者与被拷贝者相互独立,只是将一方的值拷贝给对方,但是地址还是内存资源还是相互独立的,一方被释放,不会影响到另一方。
https://blog.csdn.net/lwbeyond/article/details/6202256