智慧型指標之獨佔指標

2022-06-23 12:51:44 字數 647 閱讀 7852

2.unique_ptr-獨佔指標

獨佔型的指標不允許其它的智慧型指標共享其內部的指標,不允許通過賦值將乙個unique_ptr賦值給另外乙個unique_ptr

unique_ptr p1(new

int(10

));unique_ptr

p2 = p1;//

錯誤的,不能複製給乙個獨佔的智慧型指標

unique_ptr p3 = std::move(p1);//

ok,可以通過函式返回給其它的unique_ptr,或者使用std::move轉移指標,原來的指標不再擁有原來指標的所有權

unique_ptr可以指向乙個陣列

unique_ptr p5(new

int[10

]);p5[

9] = sizeof(p5);

unique_ptr指定刪除器

unique_ptr> p6(new

int(1

),[&](int *p));

//或者自定義unique_ptr刪除器

unique_ptr p7(new

int(1));

參考:《深入應用c++11:**優化與工程級應用》

智慧型指標之共享指標

智慧型指標是儲存指向動態分配物件指標的類。三種智慧型指標 std shared ptr std unique ptr std weak ptr.使用時需要加上標頭檔案 include 1.共享智慧型指標 shared ptr 初始化 shared ptr初始化可以通過reset方法初始化shared...

智慧型指標 強弱智慧型指標

在平時編寫 的時候經常會用到new來開闢空間,而我們開闢出來的空間必須得手動去delete他,但是如果程式設計師忘記去手動釋放那邊會出現乙個麻煩的問題,記憶體洩漏!或者是一塊記憶體被多個函式同時使用時,如果其中乙個函式不知道還有其他人也在使用這塊記憶體而釋放掉的話同樣也會引起程式的崩潰。引起記憶體洩...

C 之智慧型指標

本文發表於1999年10月份的c c users journal,17 10 1.為什麼稱它為 自動 指標?auto ptr只是眾多可能的智慧型指標之一。許多商業庫提供了更複雜的智慧型指標,用途廣泛而令人驚異,從管理引用的數量到提供先進的 服務。可以把標準c auto ptr看作智慧型指標的ford...