>智能指针auto_ptr,shared_ptr,unique_ptr和普通指针的区别在于智能指针过期是会自动删除动态内存中保存的东西。所以如果将智能指针 pa 指向非堆内存,在 pa 过期时,将delete用于非堆内存,会引发错误:
string str("Never do this");
shared_ptr<string> ps(&str);
本文探讨了智能指针如auto_ptr、shared_ptr和unique_ptr在C++中的使用区别,并通过实例说明了不当使用智能指针指向非堆内存时可能引发的问题。
>智能指针auto_ptr,shared_ptr,unique_ptr和普通指针的区别在于智能指针过期是会自动删除动态内存中保存的东西。所以如果将智能指针 pa 指向非堆内存,在 pa 过期时,将delete用于非堆内存,会引发错误:
string str("Never do this");
shared_ptr<string> ps(&str);

被折叠的 条评论
为什么被折叠?