分割コンパイルについて質問
Posted: 2011年7月21日(木) 18:03
今、簡単なRPGゲームを作っています。プログラムを少しづつ書き足したりしてるうちに
ソースがとても長ったらしくなってきたので、分割コンパイルに挑戦したのですが、
エラーが出てしまい困っています。
今、解決できていないのが、GetHitKeyStateAll_2関数に関するエラーです。
この関数は、プログラムのどの部分でも(しょっちゅう)使うので、
違うファイルからでも呼べるようにしたいのです。
これがその関数です
ヘッダファイルをインクルードして、呼びだせるようにしてから実行(?)するとこんな感じのエラーが出ます。
「error C2660: 'GetHitKeyStateAll_2' : 関数に 1 個の引数を指定できません。」
ほかのファイルから呼ぶときは、↓のループ文で呼び出します。
↑の( Key )の「Key」の下に赤色の波線がでます。
GetHitKeyStateAll_2関数はメインのソースファイルにあって、
ほかのソースファイルにメインのヘッダファイルをインクルードして、
GetHitKeyStateAll_2関数を呼ぶと↑のようなエラーがでます。
分割コンパイルは初めてなので分からないことが多いです。
自分の設計が間違っているのでしょうか?
説明がヘタクソですが、
どこがおかしいのか教えてほしいです。
説明不だったら言ってもらえれば、また書き足します。
コンパイラ名 : VC++ 2010EE
Dxライブラリを使っています。
ソースがとても長ったらしくなってきたので、分割コンパイルに挑戦したのですが、
エラーが出てしまい困っています。
今、解決できていないのが、GetHitKeyStateAll_2関数に関するエラーです。
この関数は、プログラムのどの部分でも(しょっちゅう)使うので、
違うファイルからでも呼べるようにしたいのです。
これがその関数です
int GetHitKeyStateAll_2(int KeyStateBuf[]){//GetHitKeyStateAllを拡張する関数
char GetHitKeyStateAll_Key[256];
GetHitKeyStateAll( GetHitKeyStateAll_Key );
for(int i=0;i<256;i++){
if(GetHitKeyStateAll_Key[i]==1) KeyStateBuf[i]++;
else KeyStateBuf[i]=0;
}
return 0;
}
「error C2660: 'GetHitKeyStateAll_2' : 関数に 1 個の引数を指定できません。」
ほかのファイルから呼ぶときは、↓のループ文で呼び出します。
while(!ProcessMessage() && !ClearDrawScreen()
&& !GetHitKeyStateAll_2( Key ) && !Key[KEY_INPUT_ESCAPE]){
}
GetHitKeyStateAll_2関数はメインのソースファイルにあって、
ほかのソースファイルにメインのヘッダファイルをインクルードして、
GetHitKeyStateAll_2関数を呼ぶと↑のようなエラーがでます。
分割コンパイルは初めてなので分からないことが多いです。
自分の設計が間違っているのでしょうか?
説明がヘタクソですが、
どこがおかしいのか教えてほしいです。
説明不だったら言ってもらえれば、また書き足します。
コンパイラ名 : VC++ 2010EE
Dxライブラリを使っています。