我有一个foo包含整数的命名空间bar,声明如下...
富.h:
namespace foo {
int bar;
}
现在,如果我foo.h只包含在一个文件中,这工作得很好。但是当我包含两个或多个文件时会出现问题foo.h:我收到链接器错误。我发现如果我声明bar为static,我可以包含foo.h在多个文件中。这对我来说似乎很奇怪,因为我不知道可以在命名空间内声明一个静态变量。(那有什么意思?)
为什么这行得通?更重要的是,为什么没有它就不能 static工作?在 a 中使用时是什么static意思namespace?