a.reset(b); //此时输出delete 1,代表智能指针原来指向的空间被delete cout << "end"; return 0; } 其他reset使用: p.reset(); //释放p中内置的指针指向的空间 p.reset(q.d); //将p中内置指针换为q,并且用d来释放p之前所指的空间