C ++不完整的类类型指针

时间:2016-08-02 05:44:52

标签: c++ class pointers

在源文件中,我有2个类定义

class Foo
{
public:
    int * GetPtr(){
        return Obj;
    }

    int * Obj;
}

class Bar
{
public:
    ...

    std::vector<Foo> FooVector;
}

在同一个源文件中我有这个功能

void DoSomething()
{
    Bar* barVar = CreateBar(); // Returns pointer to class object
    Foo* fooVar = &barVar->FooVector[0]; 

    if (fooVar->GetPtr()) // Error here
        ...
}

尝试编译它,我得到错误“不允许指向不完整类类型的指针”,但是类被定义在它上面几行。

1 个答案:

答案 0 :(得分:0)

我已通过正确实施这些类来解决这个问题。