龍神録プログラミングの館の12章を参考に、というかほぼそのまま使って敵の出現、動きを作成しているところなのですが
関数ポインタがうまく使えません
というのも自分のプログラムはクラスを使って作成しているからなのだと思われます
//enemy.h
class ENEMY
{
private:
public:
------------------省略--------------------
void enemy_pattern0(Ch& enemy);
void enemy_pattern1(Ch& enemy);
void enemy_pattern2(Ch& enemy);
void enemy_pattern3(Ch& enemy);
void enemy_pattern4(Ch& enemy);
};
そこで
void (*enemy_pattern[ENEMY_PATTERN_MAX])(Ch&) = {
enemy_pattern0, enemy_pattern1, enemy_pattern2, enemy_pattern3, enemy_pattern4,};
1>o:\project\dxlib\stg3\source\enemy.cpp(6) : error C3867: 'ENEMY::enemy_pattern0': 関数呼び出しには引数リストがありません。メンバへのポインタを作成するために '&ENEMY::enemy_pattern0' を使用してください
1>o:\project\dxlib\stg3\source\enemy.cpp(6) : error C2440: '=' : 'void (__thiscall ENEMY::* )(Ch &)' から 'void (__cdecl *)(Ch &)' に変換できません。
というようなのがenemy_pattern1,2,3,4についてもでてきます
関数ポインタをメンバ関数にしてみたり、グローバル関数にしてみたりしましたがうまくいきませんでした
クラスを使ったことによって引き起こされているのはなんとなく分かるのですが・・・
こういう書き方があるよーとか教えていたただきたいのです
よろしくお願いします