`shared_ptr <subclass>`如何成为`shared_ptr <baseclass>`的子类?

时间:2017-11-05 18:41:06

标签: c++

  

shared_ptr<SubClass>如何成为shared_ptr<BaseClass>的子类?

我想知道如何实现模板类C<T>,以便C<SubClass>C<BaseClass>的子类?

我已经观察过上述内容,例如shared_ptr<SubClass>shared_ptr<BaseClass>,我可以将前者分配给后者。

1 个答案:

答案 0 :(得分:5)

班级shared_ptr<SubClass>不是从shared_ptr<BaseClass>继承的。

  

我已经观察到上述内容,例如shared_ptr<SubClass>和   shared_ptr<BaseClass>,我可以将前者分配给后者。

shared_ptr<BaseClass>具有此类分配操作符template< class Y > shared_ptr& operator=( const shared_ptr<Y>& r ) noexcept;,可在YSubClass时进行转换。