91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

C++智能指針支持哪些類型

c++
小樊
81
2024-11-08 21:30:22
欄目: 編程語言

C++智能指針支持以下幾種類型:

  1. std::unique_ptr:獨占地擁有被指向的對象,保證同一時間只有一個智能指針可以擁有某個對象的所有權。當unique_ptr超出作用域時,它會自動刪除所擁有的對象。
std::unique_ptr<int> p(new int(42));
  1. std::shared_ptr:允許多個智能指針共享同一個對象的所有權。當最后一個指向對象的shared_ptr被銷毀或超出作用域時,它會自動刪除所擁有的對象。
std::shared_ptr<int> p1(new int(42));
std::shared_ptr<int> p2 = p1; // p1 和 p2 現在共享同一個對象的所有權
  1. std::weak_ptr:是一種不擁有對象所有權的智能指針,它通過觀察shared_ptr來訪問對象。weak_ptr可以防止循環引用導致的內存泄漏。
std::shared_ptr<int> p1(new int(42));
std::weak_ptr<int> wk = p1; // 創建一個 weak_ptr,它觀察 p1
  1. std::auto_ptr:是C++98中引入的一種智能指針,用于自動管理動態分配的內存。但在C++11中已被廢棄,并在C++17中被移除,因為它存在所有權傳遞的問題。不建議使用auto_ptr,而應該使用unique_ptrshared_ptr

0
柘荣县| 阳谷县| 瓦房店市| 广丰县| 湘潭市| 句容市| 彰化市| 丹巴县| 凤台县| 海口市| 佳木斯市| 灵台县| 淳安县| 甘洛县| 涡阳县| 永州市| 旺苍县| 上思县| 越西县| 乐山市| 大厂| 大荔县| 天峻县| 融水| 于田县| 清河县| 辛集市| 洱源县| 凤凰县| 响水县| 山东| 丰顺县| 江源县| 克拉玛依市| 乡宁县| 苗栗县| 神农架林区| 屏南县| 南川市| 图木舒克市| 三门峡市|