一、淺拷貝
對象初始化對象的時候調動拷貝構造函數,隻是拷貝指針指向的拷貝構造稱為淺拷貝。
當要析勾的時候對象被一一析勾的時候,第二個析勾的對象就找不到需要釋放的空間,程式報錯。
由于預設的拷貝構造函數不能完成真實空間的拷貝,是以必須手動編寫一個預設的拷貝構造函數。
二、深拷貝
對象初始化對象的時候調動拷貝構造函數,真實開辟空間拷貝資料的拷貝構造稱為深拷貝。
三、淺指派
對象給對象指派時候調動指派語句,不會開辟空間,隻是簡單的指針指派
四、深指派
對象給對象指派時候調動指派語句,會開辟空間,注意開辟空間是要釋放原有空間
指派語句4步驟:
1.自己給自己是否指派
2.釋放原有空間
3.申請新的空間指派,拷貝
4.傳回自身對象
總結:一般類中有指針成員的資料類型,那麼類中的指派語句和拷貝構造函數就需要重新編寫,不能使用預設的函數,杜絕淺拷貝,淺指派