若p为智能指针对象(如:shared_ptr< int> p)
成员函数reset使用:
p.reset(q) //q为智能指针要指向的新对象
会令智能指针p中存放指针q,即p指向q的空间,而且会释放原来的空间。(默认是delete)
实验代码:
#include
#include
using namespace std;
struct a {
int i ;
a() {
cout << "construct\n"; }
~a() {
cout << "delete "<< i <<"\n"; }
};
int main()
{
shared_ptr