亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c++智能指針怎么調用

c++
小億
75
2023-11-01 10:12:48
欄目: 編程語言

在 C++ 中,智能指針通常有以下幾種使用方式:

  1. 使用 std::shared_ptr:

    #include <memory>
    int main() {
        std::shared_ptr<int> ptr = std::make_shared<int>(10);
        *ptr = 20; // 通過指針訪問對象
        std::cout << *ptr << std::endl; // 輸出 20
        return 0;
    }
    
  2. 使用 std::unique_ptr:

    #include <memory>
    int main() {
        std::unique_ptr<int> ptr = std::make_unique<int>(10);
        *ptr = 20;
        std::cout << *ptr << std::endl;
        return 0;
    }
    
  3. 使用 std::weak_ptr:

    #include <memory>
    int main() {
        std::shared_ptr<int> sharedPtr = std::make_shared<int>(10);
        std::weak_ptr<int> weakPtr = sharedPtr;
        std::cout << *weakPtr.lock() << std::endl; // 輸出 10
        sharedPtr.reset();
        if (weakPtr.expired()) {
            std::cout << "shared_ptr 已經被釋放" << std::endl;
        }
        return 0;
    }
    

需要注意的是,當使用 std::shared_ptr 時,可以通過引用計數追蹤對象的所有權,而 std::unique_ptr 則是通過獨占所有權來實現的。而 std::weak_ptr 則允許對對象進行弱引用,不會增加引用計數,也不會阻止對象被銷毀。

0
江陵县| 全椒县| 金坛市| 达尔| 山丹县| 偏关县| 张家口市| 四会市| 新化县| 通许县| 河曲县| 忻城县| 铁岭市| 巧家县| 河间市| 菏泽市| 裕民县| 连城县| 瑞金市| 思南县| 安西县| 沁水县| 天镇县| 锡林浩特市| 天柱县| 泾阳县| 灌阳县| 荆门市| 郓城县| 手机| 鄂伦春自治旗| 邢台县| 南木林县| 北流市| 丽水市| 灵寿县| 外汇| 淮阳县| 铁岭县| 云浮市| 原平市|