小编use*_*916的帖子

"世界上最愚蠢的智能指针是什么意思?"

提议N4282提倡一种新型的非拥有智能指针称为observer_ptr.它的工作名称是exempt_ptr,它的目的是取代"原始指针".但我不明白它的目的,特别是这个假设的代码是为了实现它的目的:

struct do_nothing
{
  template <class T>
  void operator ()(T*) { }; // do nothing
};

template <class T>
  using non_owning_ptr = unique_ptr<T, do_nothing>;
Run Code Online (Sandbox Code Playgroud)

即使在阅读完文章之后,我也不明白智能指针的目的是什么都不做.它比非拥有shared_ptr或原始指针有什么优势?

c++ smart-pointers c++17

6
推荐指数
1
解决办法
373
查看次数

标签 统计

c++ ×1

c++17 ×1

smart-pointers ×1