0
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&)' 

これは何を意味するのでしょうか?

4

1 に答える 1

3

EntityHolderタイプのオブジェクトを のコンストラクターに直接渡そうとしているように見えますがshared_ptr、次のようにポインターを渡す必要があります。

boost::shared_ptr<EntityHolder> p(new EntityHolder);
于 2012-11-10T18:37:47.150 に答える