1

このエラーが発生したとき、SDL を使用したゲーム プログラミングのチュートリアルを行っていました。以下のヘッダー ファイルを使用して、CApp というクラスを作成しました。

#ifndef CAPP_H_INCLUDED
#define CAPP_H_INCLUDED

#include <SDL/SDL.h>

class CApp{
    private:
        bool Running;

    public:
        CApp();
        int OnExecute();

        bool OnInit();
        void OnEvent(SDL_Event* Event);
        void OnLoop();
        void OnRender();
        void OnCleanup();
};

#endif // CAPP_H_INCLUDED

対応する .cpp ファイルは次のとおりです。

#include "CApp.h"

CApp::CApp{
    Running = true;
}

int CApp::OnExecute(){
    if(OnInit() == false){
        return -1;
    }

    SDL_Event Event;

    while(Running){
        while(SDL_PollEvent(&Event)){
            OnEvent(&Event);
        }
        OnLoop();
        OnRender();
    }

    OnCleanup();

    return 0;
}

int main(int argc, char* argv[]){
CApp theApp;

return theApp.OnExecute();
}

エラーは、「CApp::CApp{」を読み取る .cpp ファイルの行で発生します。

私は C++ の初心者であり、SDL の初心者でもあるので、助けていただければ幸いです。私はmingwコンパイラでCodeBlocks IDEを使用しています

4

1 に答える 1

3

コンストラクトがメソッド/コンストラクターであることを宣言する括弧がありません。

CApp::CApp () {
    Running = true;
}
于 2012-08-08T18:06:38.463 に答える