static在c语言中的作用:
1, 修饰变量
(1) 隐藏:作用域仅限于本文件内,其他文件不可见。
(2) 存储位置:位于静态存储区。
(3) 生命周期:变量的生命周期从定义之处到文件结束(因为存储在静态数据区)。
(4) 自动初始化为0(因为存储在静态数据区)。
2, 修饰函数(静态函数)
(1) 隐藏:作用域仅限于本文件内,其他文件不可见。
static在C++语言中新增的作用
1, 修饰数据成员
(1) 只能在类的定义体之外进行定义(static const除外)。
(2) 属于类,独立于对象。
2, 修饰函数成员
(1) 只能访问static成员。
(2) 没有this指针。
(3) 虚函数不能声明为static。
(4) 不能声明为const。