【发布时间】:2012-02-01 03:13:07
【问题描述】:
好的,所以上次我以 C++ 为生时,std::auto_ptr 是所有可用的标准库,boost::shared_ptr 风靡一时。我从来没有真正研究过提供的其他智能指针类型提升。我知道 C++11 现在提供了一些 boost 提出的类型,但不是全部。
那么有人有一个简单的算法来确定何时使用哪个智能指针吗?最好包括关于哑指针(T* 之类的原始指针)和其余 boost 智能指针的建议。 (像this 这样的东西会很棒)。
【问题讨论】:
-
我真的希望有人想出一个很好的方便流程图,比如this STL selection flowchart。
-
@Als:哦,这确实是一个不错的!我FAQ了。
-
@Deduplicator 这甚至不接近重复。链接的问题是“我什么时候应该使用 a 智能指针”,这个问题是“我什么时候使用 这些 智能指针?”即这是对标准智能指针的不同用途进行分类。链接的问题不这样做。差别看似很小,其实很大。
标签: c++ pointers c++11 smart-pointers c++-faq