自分で新しく.hをつくり、それをほかのやつとおなじとこに入れてちゃんとincludesしているのですが、どうも反映されてないみたいです。
.hの内容は
#ifdef GLOBAL_INSTANCE
#define GLOBAL
#else
#define GLOBAL extern
#endif
#include "struct.h"
GLOBAL int black=(0,0,0);
これでほかの関数でblackという色を使おうとしているのですが
'black' : 定義されていない識別子です。
と出てしまいます。
.h
Re:.h
blackにはGetColor(0,0,0)みたいなものが入れたかったんですかね?
頑張ったら以下のように宣言と同時に格納することもできますが、
初期化や初期設定をする為の関数を作った方がいいと思います。
ちなみに0なら自動的に入るので入れる必要はないです。
頑張ったら以下のように宣言と同時に格納することもできますが、
初期化や初期設定をする為の関数を作った方がいいと思います。
ちなみに0なら自動的に入るので入れる必要はないです。
(例) #ifdef GLOBAL_INSTANCE #define GLOBAL #define GLOBAL_VAL(v) =(v) #define GLOBAL_ARR2(a,b) ={a,b} #else #define GLOBAL extern #define GLOBAL_VAL(v) #define GLOBAL_ARR2(a,b) #endif GLOBAL int black GLOBAL_VAL(1);//1を格納 GLOBAL int color[2] GLOBAL_ARR2(2,3);//[0]に2,[1]に3を格納