staticメンバ変数を実体を作っても未解決になる
Posted: 2012年7月27日(金) 15:26
あるクラスでstatic メンバ変数と、そのメンバ変数を使用するstatic メンバ関数を作りました。
コンパイルするとstaticメンバ変数が未解決ですとでます。
ちゃんとヘッダに宣言して、実体をcppに書いています。
CharaクラスにMapクラス型のポインタをstaticにしたいんですが、コード省略してのせます
ちなみにset_pmap関数の部分をすべてコメントアウトしたらエラーは出なかったです。
pmapに代入しようとするとエラーがおきるようですが、staticを使ったことがないので対処法がわかりません。
どなたか分かる方おしえてください。
コンパイルするとstaticメンバ変数が未解決ですとでます。
ちゃんとヘッダに宣言して、実体をcppに書いています。
CharaクラスにMapクラス型のポインタをstaticにしたいんですが、コード省略してのせます
//ヘッダ
#include "Map.h"
class Chara
{
public:
Chara::Chara(void);
Chara::~Chara(void;
static Map *pmap;
static void set_pmap(Map);
}
//cpp
#include "Chara.h"
Map Chara::*pmap = 0;
void Chara::set_pmap(Map *set_pmap)
{
pmap = set_pmap;//ここコメントアウトしたらエラーでなかった。
return;
}
pmapに代入しようとするとエラーがおきるようですが、staticを使ったことがないので対処法がわかりません。
どなたか分かる方おしえてください。