的std :: enable_shared_from_this<> - 缺少is_shared()?

时间:2016-07-11 11:06:55

标签: c++ c++11

如果没有共享对象,则

shared_from_this()具有未定义的行为。

但如果共享,它就知道相关的“控制块”(Effective Modern C ++,Item 19)。那么为什么std::enable_shared_from_this<>不会添加一些返回true或false的is_shared()函数,因为对象是否共享?

std::enable_shared_from_this<>似乎引入了某种依赖倒置。对象取决于它的使用方式。但是通过一些is_shared()功能,它至少可以“适应”混合模式的使用。

0 个答案:

没有答案