在类声明中缺少分号

时间:2012-06-26 21:59:57

标签: c++ syntax-error

我怀疑这是一个非常小的问题,但我花了几个小时试图修复它并且没有找到任何东西。

在Game.h(头文件)中,我有以下内容:

#pragma once

#include "PlayEngine.h"

class Game {

public:
    int Init();
    int Run();
    int Shutdown();

private:
    enum State { ST_MENU, ST_PLAYING } state;
    PlayEngine* playengine_;
};

编译器在PlayEngine* playengine_上抛出语法错误,抱怨;之前缺少*。 PlayEngine是我在其他地方定义的课程。

我错过了什么?

2 个答案:

答案 0 :(得分:7)

替换

#include "PlayEngine.h"

class PlayEngine;

对于这种情况,声明就足够了。 (我打赌来源是一个循环的包含)

答案 1 :(得分:-1)

在枚举声明结束时删除状态。并将变量声明为单独的。

#pragma once
#include "PlayEngine.h"  
class Game {  
    public:     
        int Init();     
        int Run();     
        int Shutdown();  
    private:     
        enum State { ST_MENU, ST_PLAYING };  
        State state;   
        PlayEngine* playengine_; 
};