记录下,C++11标准下的通用智能指针,请注意shared_ptr是类,并不是真正的指针,具体用法如下所示:
#include <iostream>
#include <string>
#include<memory>
using namespace std;
int main() {
std::shared_ptr<double> p_first(new double);
{
std::shared_ptr<double> p_copy = p_first;
*p_copy = 21.2;
} // 此時 'p_copy' 会被销毁,但动态分配的 double 不会被销毁。
return 0;
}
注意:通用指针的头文件是#include<memory>