ページ 11

「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 21:00
by pingguo
1>------ ビルド開始: プロジェクト: RyuJin, 構成: Debug Win32 ------
1>コンパイルしています...
1>cl : コマンド ライン warning D9035 : オプション 'Wp64' の使用は現在推奨されていません。今後のバージョンからは削除されます。
1>char.cpp
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(3) : error C2144: 構文エラー : 'void' は ';' によって先行されなければなりません。
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(7) : error C2144: 構文エラー : 'int' は ';' によって先行されなければなりません。
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(7) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(7) : error C2086: 'int GLOBAL' : 再定義されました。
1> c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(3) : 'GLOBAL' の宣言を確認してください。
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(9) : error C2144: 構文エラー : 'int' は ';' によって先行されなければなりません。
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(9) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\users\hayate\desktop\龍神録\project\1章\mydat\include\function.h(9) : error C2086: 'int GLOBAL' : 再定義されました。
(長いので省略しましたが)このようなエラーがでてしまいます。
コードは以下に示します。

コード:

//graph.cpp
        //描画メイン
        GLOBAL void graph_main();

//key.cpp
        //現在のキー入力処理を行う
        GLOBAL int GetHitKeyStateAll_2();
        //受け取ったキー番号の現在の入力状態を返す
        GLOBAL int CheckStateKey(unsigned char Handle);

//laod.cpp
        //データのロード
        GLOBAL void load();

        GLOBAL void first_ini();

        GLOBAL void calc_ch();

        GLOBAL void GetHitPadStateAll();
        GLOBAL int CheckStatePad(unsigned int Handle);

        GLOBAL void ch_move();

        GLOBAL void enemy_main();
        GLOBAL void ini();

        GLOBAL void enemy_main();
        GLOBAL void ini();

        GLOBAL void load_story();

//shot.cpp
        GLOBAL double shotatan2(int n);
        GLOBAL int shot_search(int n);
        GLOBAL void shot_main();
//music.cpp
        GLOBAL void music_ini();
        GLOBAL void music_play();

        GLOBAL double rang(double);

        GLOBAL void cshot_main();

//out.cpp
        GLOBAL void out_main();

//effect.cpp
        GLOBAL void effect_main();
どうすればいいのでしょうか?

Re: 「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 21:25
by softya(ソフト屋)
えらくハイペースに進んでますが理解しながら進まれてますか?
このエラーはfunction.h以前にエラーがあると思われますので、Gv.hやchar.cppを再確認して下さい。

Re: 「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 21:26
by box
function.h
を見せてください。

Re: 「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 21:29
by softya(ソフト屋)
box さんが書きました:function.h
を見せてください。
添付されているコードがfunction.hだと思いますが。

Re: 「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 21:49
by box
softya(ソフト屋) さんが書きました: 添付されているコードがfunction.hだと思いますが。
コードは以下に示します。

とだけあったので、ゲームプログラミングに興味も関心もない当方にとっては
function.h
であるとは全く気づかない状態でした。

function.hのコードは以下に示します。

という風に主語がはっきりと書いてあれば、ゲームプログラミングに興味も関心もない当方でもわかったと思います。

Re: 「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 22:05
by box
というわけで、質問者さん、

GLOBAL

をどこでどういう風に定義しているかを示してみてください。

Re: 「自機に当たり判定と無敵処理を付けてみよう」でエラーがでてしまいます。

Posted: 2012年5月04日(金) 22:40
by pingguo
GV.hでおかしなところで関数宣言をしていたので、位置を直したらエラーが出なくなりました。
これからはしっかりと勉強をして質問をするようにします。
回答してくれた皆様どうもありがとうございました。