[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
先日、やっとの事でファイルの分割は出来たのですが、変数や関数の宣言を2度書かねばならず
不便でした。
ですが、C言語何でも質問サイトさんの龍神録プログラミングの館で便利な方法が紹介されて
いました。
具体的な方法は上記のサイトに書かれていますが、簡単に書くとヘッダファイルで
#ifdef _GLOBAL_INSTANCE_
#define GLOBAL
#else
#define GLOBAL extern
#endif
と宣言しておいて、さらに
GLOBAL int a;
GLOBAL void func1(void);
と宣言し、仮にGV.hという名前でヘッダファイルとして保存したとします。
で、main.cppでは(と言うか普通に宣言したいファイルの時)
#define _GLOBAL_INSTANCE_
#include "GV.h"
と宣言すれば、extern宣言せずに変数や関数の宣言をしてくれます。
そして、extern宣言したいファイルでは
#define _GLOBAL_INSTANCE_ は宣言せずに
#include "GV.h"を読み込めば、extern宣言して変数や関数を読み込んでくれます。
こうすれば"GV.h"に変数や関数を追加するだけでOKになるので便利です^^
こんな感じでファイルを追加してみました↓
それにしても、こんな方法を自分で考えるのは無理ってもんです。今回のファイル分割にしても
C言語何でも質問サイトさんの記事を丸写ししたような物ですし・・・
ホント最初にこういう事を考える人は凄いなぁと感心しますね^^
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!