class EntityHolder {
public:
EntityHolder ( ) { }
EntityHolder (
const EntityHolder& other ) { }
~EntityHolder ( ) { }
EntityHolder&
operator = (
const EntityHolder& other ) {
return *this;
} // =
当我尝试创建boost:shared_ptr时,我收到以下错误:
..\src\Entity.cpp:7:34: error: no matching function for call to 'boost::shared_ptr<orm::EntityHolder>::shared_ptr (orm::EntityHolder&)'
这是什么意思?
答案 0 :(得分:3)
看起来你正试图将EntityHolder
类型的对象直接传递给shared_ptr
的构造函数,但是你应该给它一个指针,如下所示:
boost::shared_ptr<EntityHolder> p(new EntityHolder);