|
Free 函数是在全局范围或命名空间范围内定义的函数。 默认情况下,非常量全局变量和 Free 函数具有外部链接;它们在程序中的任何翻译单元内可见。 其他任何全局对象都不能具有该名称。 具有内部链接或无链接的符号仅在声明它的翻译单元内可见。 当一个名称具有内部链接时,同一名称可能存在于另一个翻译单元中。 类定义或函数体中声明的变量没有链接。
如果要强制一个全局名称具有内部链接,可以将它显式声明为 static。 此关键字将它的可见性限制在声明它的同一翻译单元内。 在此上下文中,static 表示与应用于局部变量时不同的内容。
默认情况下,以下对象具有内部链接:
const对象
constexpr对象
typedef对象
命名空间范围中的 static 对象
若要为 const 对象提供外部链接,请将其声明为 extern 并为其赋值:
C++
extern const int value = 42;
|
|