C 与 C 中与 Const 的内部链接 众所周知,在 C 中在命名空间范围内声明 const 对象会导致内部链接,与 C 中观察到的行为相反。 这种区别背后的基本原理在附录 C 中进行了解释C 11 标准(C.1.2 节)。它指出文件范围的 const 对象仅限于内部链接,即使没有显式的 extern 声明也是如此。此更改有两个目的: 鼓励显式初始化器:通过限制文件中 const 对象的链接,鼓励程序员在声明期间显式指定初始值。 头文件包含:此功能允许将 const 对象放置在跨头文件包含的头文件中多个编译单元。