ページ 11

分割コンパイルについて

Posted: 2010年8月29日(日) 16:40
by しろ
こんにちは。

分割コンパイル(龍神録5章)でfunction.hの中の各関数の宣言内でGLOBALという文言が入りますが、これは必要なのでしょうか? 現在のところ、それを読み込んでいるmain関数以外で該当関数を使っていないような気がするので、必要ない気もします。

ただ、このあたりの分割コンパイルについてはあまり勉強したことがなく、あまり自信がありません。(いくつかのwebサイトを見ても、extern宣言あたりの説明はあるのですが、龍神録のような#ifdefを使ったテクニカルなやり方についてはのっているサイトを見つけられませんでした)

どこか、このあたりのことに関して詳しいサイト(あるいは書籍)がありましたら教えていただければ幸いです。

よろしくお願いします。

Re:分割コンパイルについて

Posted: 2010年8月29日(日) 20:05
by ookami
> GLOBALという文言が入りますが、これは必要なのでしょうか?

http://dixq.net/rp/5.html(龍神録5章)
冒頭に、

> 前の節ではメインファイルがごちゃごちゃして、どこで、変数宣言して、どこでexternしたのかよくわからなくなってしまいました。
> そこで、変数宣言やextern宣言の仕方を工夫してみましょう。

とあるので、それかと。
逆に言えば、externと実体を混乱せずに書けるなら、必要ないです。

ただ、今後も龍神録のページを参考にしていくなら、
ソースをコピーしやすくなる、というメリットがありますね。


> どこか、このあたりのことに関して詳しいサイト(あるいは書籍)がありましたら教えていただければ幸いです。
こんなのがありました。
http://www.geocities.co.jp/SiliconValle ... ic/14.html
参考になりますでしょうか?

Re:分割コンパイルについて

Posted: 2010年8月29日(日) 20:33
by しろ
>逆に言えば、externと実体を混乱せずに書けるなら、必要ないです。

なるほどそういうことだったのですね。
サイトのほうも参考にさせていただきます。

どうもありがとうございました!