C++中命名空间中静态函数的链接

5 c++ static namespaces linkage

在非全局命名空间中声明的静态函数的链接是什么?

例:

namespace foo {
  ...
  static void bar(int a) { }
}
Run Code Online (Sandbox Code Playgroud)

这与在全局命名空间范围内声明的静态方法有什么不同?有人能指出我在标准中的位置吗?

谢谢!

Dav*_*eas 8

static在命名空间级别的函数中使用时表示内部链接.

具体报价将来自3.5计划联系,第3段:

具有命名空间作用域(3.3.6)的名称具有内部链接(如果它的名称)

  • 显式声明为static的变量,函数或函数模板; 要么, [...]