被static修饰后的特性
局部变量:
1. 默认初始化为0
2. 函数结束不释放,下次调用函数会继续使用
全局变量:
1. 默认初始化为0
2. 其他文件对该变量不可见,降低了程序模块之间的耦合性
函数:
1. 其他文件对该函数不可见(static是一个很有用的关键字,使用得当可以使程序锦上添花。当然,有的公司编码规范明确规定只用于本文件的函数要全部使用static关键字声明,这是一个良好的编码风格。)
静态数据成员:
1. 初始化在必须类外,如果想在类内初始化,前面必须加const修饰
2. 属于类,不属于某一个对象,所有对象共享这一个变量
静态成员函数:
1. 没有this指针
2.静态成员函数只能直接访问静态成员变量(函数),而不能直接访问普通成员变量(函数)
总结:在使用权限上,与普通函数没有差别,相当于在普通函数上加了个类的前缀。