[1022] Re:externについて
投稿者:(ぱ)こと管理人
2007/08/20 22:56:45
>ヘッダ中で宣言+ソースファイル中で定義することは完璧に正しい
これはもちろんそうなのですが、
>以下のような小細工コードをいまだに見るけど、現代 C/C++ であれば不要
>#ifdef HOGE_DEFINITION
>#define EXTERN
>#else
>#define EXTERN extern
>#endif
この小細工は、ヘッダとソースファイルに似たようなものを分散させたくないという面からは有効だと思いますよ。初期化子がうまく書けないとか、文法的にCのパーサを通らんようなマクロを作るなとか、そもそもそんなにグローバル変数使うなよとか、批判があるのはわかりますが。