在非全局名称空间中声明的静态函数与命名空间的链接方式是什么?
示例:
这与在全局命名空间范围内声明的静态方法有什么不同吗?能否指出标准中规定这一点的位置?
谢谢!
示例:
namespace foo {
...
static void bar(int a) { }
}
这与在全局命名空间范围内声明的静态方法有什么不同吗?能否指出标准中规定这一点的位置?
谢谢!
namespace foo {
...
static void bar(int a) { }
}
static
在命名空间级别的函数中使用时意味着内部链接。
具体引用来自于第3.5节程序链接,第3段:
如果一个具有命名空间作用域(3.3.6)的名称是:
- 显式声明为静态变量、函数或函数模板;或者[...]
则该名称具有内部链接。