>智能指针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和普通指针的区别在于智能指针过期是会自动删除动态内存中保存的东西。所以如果将智能指针 pa 指向非堆内存,在 pa 过期时,将delete用于非堆内存,会引发错误:
string str("Never do this");
shared_ptr<string> ps(&str);