1.unique_ptr的作用

unique_ptr是C++11标准库中智能指针的一种,它的特点是拥有独占权,也就是说一个unique_ptr指针只能被一个对象所拥有,一旦unique_ptr指针被销毁,它所拥有的对象也会随之被释放。unique_ptr的优点是可以自动释放资源,可以减少内存泄漏,可以提高程序的性能,更加安全。

2.unique_ptr的使用

unique_ptr的使用非常简单,只需要在头文件中包含unique_ptr头文件,然后定义unique_ptr指针,就可以使用unique_ptr指针来管理资源了。例如:

#include

int main()

{

unique_ptr pInt(new int(20));

cout << *pInt << endl;

return 0;

}

3.shared_ptr的作用

shared_ptr是C++11标准库中智能指针的一种,它的特点是可以被多个对象所共享,它的内部有一个引用计数器,当有一个对象拥有shared_ptr指针时,该指针的引用计数器加1,当引用计数器减为0时,shared_ptr指针所拥有的对象也会随之被释放。shared_ptr的优点是可以实现多个对象共享一个对象,可以减少内存泄漏,可以提高程序的性能,更加安全。

4.shared_ptr的使用

shared_ptr的使用非常简单,只需要在头文件中包含shared_ptr头文件,然后定义shared_ptr指针,就可以使用shared_ptr指针来管理资源了。例如:

#include

int main()

{

shared_ptr pInt(new int(20));

cout << *pInt << endl;

return 0;

}