【发布时间】:2020-07-06 16:10:34
【问题描述】:
我有一个
class A: public std::enable_shared_from_this<A>{....}
class B: public A{....}
稍后在代码中,我正在这样做:
std::shared_ptr<A> Construct(....){
class_field=std::make_shared<B>(...);
return class_field->shared_from_this();
}
使用这段代码,我想确保 B 的对象在当前类被销毁时被销毁,以及当客户端函数中的对象超出范围时。
这是处理这个问题的正确方法吗?有没有更好的方法从 shared_ptr 中获取 shared_ptr?
【问题讨论】:
标签: c++ type-conversion shared-ptr