ptr 这是的特性之一,大概实现就是运用了类型擦除

来源:趣玩责编:网络时间:2024-05-04 13:01:44

template<class T>
class shared_ptr
{
public:
   ...
   template<class Y>
   explicit shared_ptr(Y* p);
   ...
};

: p 必须是 T*。 Y 应该是一个类型。 p 应该很好,应该很好,并且不应该投掷。

: a 拥有 p。

……

:如果 *this 为空或 (() > 1),则没有边。ptr,如果 *this 拥有 p 和 ad,则 d(p) 为 。 ,如果 *this 拥有 ap,并且 p 是 。

可能的实现是使用类型擦除并在构造过程中将它们填充到块中。

详情请看这个答案/a//

猜你喜欢
最新游戏更多
热门专题更多
最新资讯更多