您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> 编程语言综合 >> 正文

C++中static的用法汇总

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 static的全部用法

  要理解static,就必须要先理解另一个与之相对的关键字,很多人可能都还不知道有这个关键字,那就是auto,其实我们通常声明的不用static修饰的变量,都是auto的,因为它是默认的,就象short和long总是默认为int一样;我们通常声明一个变量:

  int a;

  string s;

  其实就是:

  auto int a;

  auto string s;

  而static变量的声明是:

  static int a;

  static string s;

  这样似乎可以更有利于理解auto和static是一对成对的关键字吧,就像private,protected,public一样;

  对于static的不理解,其实就是对于auto的不理解,因为它是更一般的;有的东西你天天在用,但未必就代表你真正了解它;auto的含义是由程序自动控制变量的生存周期,通常指的就是变量在进入其作用域的时候被分配,离开其作用域的时候被释放;而static就是不auto,变量在程序初始化时被分配,直到程序退出前才被释放;也就是static是按照程序的生命周期来分配释放变量的,而不是变量自己的生命周期;所以,像这样的例子:

  void func()

  {

  int a;