我有在其构造函数中创建其他子对象的对象,传递“this”以便子对象可以将指针保存回其父对象。我在编程中广泛使用boost::shared_ptr作为std::auto_ptr或原始指针的更安全替代方案。所以child会有shared_ptr这样的代码,而boost提供了shared_from_this()parent可以给child的方法。我的问题是shared_from_this()不能在构造函数中使用,这并不是犯罪,因为无论如何都不应该在构造函数中使用“this”,除非您知道自己在做什么并且不介意限制。Google的C++风格指南states构造函数应该只将成员变量设置为其初始值。