我听说在关键字的含义上存在语言之间的差异static
,但我还没有找到一个很好的列表来整合这些差异。
以下是我对static
C++ 中含义的了解:
- 对于函数内的局部静态变量,该变量在启动时初始化,并且值在函数调用之间保存。
- 静态数据成员在类的所有实例之间共享。换句话说,静态数据成员只有一个实例。静态数据成员必须在文件范围内初始化。
- 静态成员函数只能访问静态成员。
- 在递归代码中,静态对象或变量保证在代码块的不同实例中具有相同的状态。
- 在文件范围内定义的静态对象和变量只有内部链接。没有其他文件可以使用它们。
static
在其他语言中的含义如何变化?