- static作用:
1、变量具有记忆功能,在函数调用过程中值不变
2、模块中的变量(函数外),作用域有限,仅该模块内所有函数;函数同理,仅包含该函数的文件可用
- static全局变量与普通全局变量区别:
static全局变量只初始化一次,目的:防止在其他文件单元中被引用
- static局部变量与普通局部变量区别:
static局部变量只被初始化一次,下次运算依据是上次的结果值
- static()函数与普通函数区别:
作用域不一样,static()函数只在一个源文件中有效,不能被其他源文件使用
- C++中类内静态数据成员特点
1、无论类对象被定义了多少个,静态数据成员在程序中只有一份,由该类型的所有对象共享访问
2、静态数据成员存储在全局数据区,定义时要分配空间,不能在类声明中定义。他不属于特定的类对象,在没有产生类对象时,其作用域也可见,程序也可用
3、静态数据成员与普通数据成员一样遵从public、protected、private访问规则
4static成员变量的初始化是在类外,此时不带static关键字,private、protected的static成员随可以在类外初始化,但不能在类外访问
- 与全局变量相比,使