static定义的变量,放在静态存储区
static 全局变量,其有作用域仅为定义的源文件,次源文件内的函数可以使用次变量
非static全局变量,则在全局的所有源文件中可用
局部变量,定义为static后,改变其生存周期,放在静态存储区,
static 局部变量仅被初始化一次,下一次依据上一次结果
static全局变量仅被初始化一次,防止在其他文件中被引用
static 类成员函数,参数中不再隐含传递this指针,所以其效率会有所提高,可称为callback函数
类 static变量初始化必须在类外部:
int ClassName::var = 10;//注意:没有static 限定了
static 数据成员在程序一开始便存在,所以其初始化不能在函数体内
static 类函数,不能定义为虚函数
总结:static限定作用域,将变量存储在全局数据区
在不同文件中,定义相同名字的static全局变量,不发生冲突
static 全局变量,其有作用域仅为定义的源文件,次源文件内的函数可以使用次变量
非static全局变量,则在全局的所有源文件中可用
局部变量,定义为static后,改变其生存周期,放在静态存储区,
static 局部变量仅被初始化一次,下一次依据上一次结果
static全局变量仅被初始化一次,防止在其他文件中被引用
static 类成员函数,参数中不再隐含传递this指针,所以其效率会有所提高,可称为callback函数
类 static变量初始化必须在类外部:
int ClassName::var = 10;//注意:没有static 限定了
static 数据成员在程序一开始便存在,所以其初始化不能在函数体内
static 类函数,不能定义为虚函数
总结:static限定作用域,将变量存储在全局数据区
在不同文件中,定义相同名字的static全局变量,不发生冲突