【发布时间】:2013-03-21 14:03:34
【问题描述】:
我有一个从其他两个对象(A 和 B)派生的对象 (Z)。
A 和 B 都派生自 enable_shared_from_this<>,分别是 enable_shared_from_this<A> 和 enable_shared_from_this<B>。
当然,我在 Z 上调用 shared_from_this()。当然编译器会将此报告为模棱两可。
我的问题是:
- 从
enable_shared_from_this<>继承两次是安全的还是会创建两个单独的引用计数(不好!) - 如果不安全,我该如何解决?
注意:
我发现了另一个问题bad weak pointer when base and derived class both inherit from boost::enable_shared_from_this,但它并没有真正回答。我也应该使用virtual 技巧吗?
【问题讨论】:
标签: c++ shared-ptr multiple-inheritance enable-shared-from-this