龍神録プログラミングの掲載ミス?それとも私の勘違い?
Posted: 2012年1月23日(月) 23:27
http://dixq.net/rp/5.html
このページが理解できません。
・他のファイルで定義した関数はメインファイルではextern宣言する必要がある。
て書いてありますよね。
メインファイルからは
#define GLOBAL_INSTANCE
#include "../include/GV.h"
としてGV.hを取り込みます。
更にその中のfunction.hを取り込みます。
このときGLOBAL_INSTANCE が定義されていますから
#ifdef GLOBAL_INSTANCE
#define GLOBAL
#else
#define GLOBAL extern
#endif
より
GLOBALは空白です。
--function.h変更--
//graph.cpp
//描画メイン
GLOBAL void graph_main();
//key.cpp
//現在のキー入力処理を行う
GLOBAL int GetHitKeyStateAll_2();
//受け取ったキー番号の現在の入力状態を返す
GLOBAL int CheckStateKey(unsigned char Handle);
//laod.cpp
//データのロード
GLOBAL void load();
というソースでは、
>>メインファイルではextern宣言する必要がある。
が満たされていない気がします。
このページが理解できません。
・他のファイルで定義した関数はメインファイルではextern宣言する必要がある。
て書いてありますよね。
メインファイルからは
#define GLOBAL_INSTANCE
#include "../include/GV.h"
としてGV.hを取り込みます。
更にその中のfunction.hを取り込みます。
このときGLOBAL_INSTANCE が定義されていますから
#ifdef GLOBAL_INSTANCE
#define GLOBAL
#else
#define GLOBAL extern
#endif
より
GLOBALは空白です。
--function.h変更--
//graph.cpp
//描画メイン
GLOBAL void graph_main();
//key.cpp
//現在のキー入力処理を行う
GLOBAL int GetHitKeyStateAll_2();
//受け取ったキー番号の現在の入力状態を返す
GLOBAL int CheckStateKey(unsigned char Handle);
//laod.cpp
//データのロード
GLOBAL void load();
というソースでは、
>>メインファイルではextern宣言する必要がある。
が満たされていない気がします。