使用言語はC++で半年くらいやっています。
開発環境はVisualC++2008 Dxlibrary使用です。
今回皆様にお聞きしたい事は管理人様が龍神録で使用している
GetHitKeyStateAll_2()等の他のcppにまたがって使用するような関数についてなのですが
unsigned char state_key[256];
int GetHitKeyStateAll_2()
{
char GetHitKeyStateAll_Key[256];
GetHitKeyStateAll( GetHitKeyStateAll_Key );
for( int i = 0; i < 256; i++ )
{
if( GetHitKeyStateAll_Key[i] == 1 )
{
state_key[i]++;
}
else
{
state_key[i] = 0;
}
}
return 0;
}
CheckStateKey( unsigned char Handle )
{
return state_key_[ Handle ];
}
しかしこのstate_keyの配列はグローバルな場所で宣言されてしまっているのが嫌で
このGetHitKeyStateAll_2()、CheckStateKeyとともに静的メンバにしてしまいstate_key[256]をprivateにし、
クラスに収めてしまおうと思ったのですが、staticで宣言したメンバ配列を使おうとするとエラーが出ます。
どうも初期化を行いなさいということだとは思うのですが静的メンバ配列を初期化とはどうすればよいのでしょうか。
ちなみに今は代用としてシングルトンで実装しているのですが、使い方が適当ではない気がしてなりません。
どうか皆様ご助力お願いします。