跳转到内容

C++ 编程

来自维基教科书,开放书籍,开放世界
内部链接

当用在自由函数,全局变量或全局常量上时,它指定内部链接(与extern不同,它指定外部链接)。内部链接将对数据或函数的访问限制在当前文件。

在任何函数或类之外使用的示例

static int apples = 15;
定义了一个名为apples的“静态全局”变量,初始值为 15,仅从该翻译单元可见。
static int bananas;
定义了一个名为bananas,初始值为 0,仅从该翻译单元可见。
int g_fruit;
定义了一个名为g_fruit的全局变量,初始值为 0,从每个翻译单元可见。此类变量通常被认为是糟糕的风格。
static const int muffins_per_pan=12;
定义了一个名为muffins_per_pan的变量,仅在该翻译单元中可见。static 关键字在这里是多余的。
const int hours_per_day=24;
定义了一个名为hours_per_day的变量,仅在该翻译单元中可见。(这与
static const int hours_per_day=24;
).
static void f();
声明有一个函数f不带参数且没有返回值,该函数在该翻译单元中定义。这种前向声明通常用于定义相互递归的函数。
static void f(){;}
定义了函数f()在上面声明。该函数只能从该翻译单元中的其他函数和成员调用;它对其他翻译单元不可见。

华夏公益教科书