仅在函数内初始化一次值

时间:2011-09-06 07:07:32

标签: c# c++

  

可能重复:
  Static variables in C#

如果你有一个大函数,并且在某个地方的中间你有一个值,应该只在第一次遇到时声明。

在c ++中,您可以使用静态:

void func() {
  ...
  ...
  static double startPosition = 0.0;
  int var = startPositino - value;
  startPosition = var;
  ...
}

但是在c#中你不能在函数内部使用静态变量,是否有其他方法可以在函数外声明它?

1 个答案:

答案 0 :(得分:0)

bool changed = true;



void func() // the large function from the question (it wasn't specified what it does or what is called)
{
   .....

   if(changed)
   {
       // here you initalize you variable (the static from the c++)
       changed = false;
   }

   .....
}