传统的 C++ 代码有时可能想要执行 return this; (返回 CRType* 原始指针)。
return this;
CRType*
要改为返回 std::shared_ptr<CRType>,请将您的类派生自 std::enable_shared_from_type<CRType>(以便内部 std::shared_ptr<> 开始拥有此对象),并返回 shared_from_this() 而不是 this。
std::shared_ptr<CRType>
std::enable_shared_from_type<CRType>
std::shared_ptr<>
shared_from_this()
this
有关将 this 指针作为智能指针返回的更多信息(包括交互式示例)