简述
网上有不少人认为,标准c++是没有GC的。实际上,为了运行效率的提高以及在嵌入式设备上运行,c++不提供语言层面的GC。但是,c++头文件memory提供了智能指针std::shared_ptr,作GC的用途。这使得我们可以决定哪些指针需要GC、哪些不需要,以免不必要的消耗。
头文件
要使用std::shared_ptr,需要引入头文件memory,如下:
#include <memory>
创建和使用
我们可以直接把new获得的指针赋值给std::shared_ptr对象,或者把一个shared_ptr赋值给另一个shared_ptr:
#include <memory>
#include <iostream>