小编hsy*_*ydn的帖子

为什么 shared_ptr 不删除它的内存?

int main(){

    int* iptr;
    {
    std::shared_ptr<int> sptr = std::make_shared<int>(12);
    iptr = sptr.get();
    }

    std::cout << *iptr;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出

12
Run Code Online (Sandbox Code Playgroud)

我原以为iptr指向的内容会被删除,位于内花括号的末尾。但输出显示 12. 我错过了什么吗?

c++ smart-pointers shared-ptr

1
推荐指数
2
解决办法
102
查看次数

标签 统计

c++ ×1

shared-ptr ×1

smart-pointers ×1