代码点读机 / C++ / std::shared_ptr

std::shared_ptr C++ · STL

共享所有权的智能指针,多个 shared_ptr 可以指向同一对象,引用计数归零时自动 delete。

怎么用

std::shared_ptr<类型> 名;

小例子

auto p = std::make_shared<int>(5);
auto q = p;
std::cout << *q;

运行结果

5

提醒:注意循环引用会导致内存泄漏,可用 std::weak_ptr 打破循环

官方文档:https://en.cppreference.com/w/cpp/memory/shared_ptr

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C++全部词条