static 关键字的作用?
分别从函数, 模块, 和类三方面 就static修饰的变量和函数进行说明 :
1> 函数体内 static 变量的作用范围为该函数体,不同于 auto 变量,该变量的内存只被分配一次, 因此其值在 下次调用时仍维持上次的值;
2> 在模块内的 static 全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问;
3> 在模块内的 static 函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明 它的模块内;
4> 在类中的 static 成员变量属于整个类所拥有,对类的所有对象只有一份拷贝;
5> 在类中的 static 成员函数属于整个类所拥有,这个函数不接收 this 指针,因而只能访问类的static 成员变量