【初心者歓迎】C/C++室 Ver.66【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0725デフォルトの名無しさん
2009/06/28(日) 14:45:10ということは、
test.hの内容
(1)static const int TEST = 10;
(2)const int TEST = 10;
test1.cppの内容
#include "test.h"
test2.cppの内容
#include "test.h"
test3.cppの内容
#include "test.h"
とした場合、
(1)の場合だとインクルードした3回分だけ、同じ名前の変数TESTが作成される
(2)の場合だとTESTはtest.hの一つしか作成されない。
という理解でよいでしょうか。
これが正しいとすると、ヘッダにstatic constで書く理由がほぼ無いと思うのですが・・・
ところが、以下のサイトではヘッダファイルに(2)の方法では書けないとあります。
http://www.paw.hi-ho.ne.jp/takadayouhei/technic/42.html
しかし、自分の環境VisualStudio2005では普通に(2)の方法で書くことができました。
なぜ、上記サイトで「ヘッダでconst変数を書けない」ということがでてきたのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています