使用boost :: enable_shared_from_this时出现不完整的类型错误

Abh*_*and 9 c++ shared-ptr

在以下行

class Symbol : public boost::enable_shared_from_this<Symbol> {

我收到错误:

错误:无效使用不完整类型struct boost::enable_shared_from_this<Symbol> /usr/include/boost/smart_ptr/shared_ptr.hpp:63:错误:声明struct boost::enable_shared_from_this<Symbol>

知道为什么我会收到这个错误.符号是一个抽象类(如果重要的话)

Abh*_*and 13

哎呀.错误是因为我没有包含定义 enable_shared_from_this 的头文件(这是boost/enable_shared_from_this.hpp).

它只在/usr/include/boost/smart_ptr/shared_ptr.hpp中声明