关于C++中static的使用

何时使用static修饰的局部变量?

当要求变量受到上一次运算后的影响时,使用static修饰局部变量即可。

举个栗子:

#include <iostream>

using namespace std;

int add(int n){
  static int i = 0;
  i += n;
  return i;
}
int main(void)
{
  int a = add(10);
  cout << a << endl;
  int b = add(-10);
  cout << b << endl;
  return 0;
}

 可以看到,add函数中被static修饰的i受到两次运算的影响——先加10,后减10,回到了初始值。

posted @ 2022-01-11 22:08  Kisen  阅读(37)  评论(0)    收藏  举报