首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从shared_ptr中分离指针?

从shared_ptr中分离指针的方法是使用std::shared_ptr::get()成员函数。这个函数返回一个指向shared_ptr管理的对象的原始指针。

例如:

代码语言:cpp
复制
#include<iostream>
#include<memory>

int main() {
    std::shared_ptr<int> shared_ptr = std::make_shared<int>(42);
    int* raw_ptr = shared_ptr.get();

    std::cout << "shared_ptr: "<< shared_ptr.use_count()<< std::endl;
    std::cout << "raw_ptr: " << *raw_ptr<< std::endl;

    return 0;
}

在这个例子中,我们创建了一个shared_ptr,并使用get()函数从中提取了一个原始指针。然后,我们打印了shared_ptr的引用计数和原始指针的值。

需要注意的是,从shared_ptr中分离出来的原始指针不会影响shared_ptr的引用计数,因此在使用原始指针时需要特别小心,以避免出现内存泄漏或其他问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券