foo私はそう宣言された整数を含む名前空間を持っていますbar...
foo.h:
namespace foo {
int bar;
}
ここで、1 つのファイルにのみ含めるfoo.hと、これは問題なく機能します。foo.hしかし、 2 つ以上のファイルからインクルードすると問題が発生します。リンカ エラーが発生します。barとして宣言すると、複数のファイルstaticに含めることができることがわかりました。foo.h名前空間内で静的変数を宣言できることを知らなかったので、これは奇妙に思えます。(それは一体何の意味ですか?)
なぜこれが機能するのですか?さらに重要なのは、なぜそれがないと機能しない staticのですか? staticで使われるとはどういう意味ですかnamespace?