对于多次调用的函数,如何递增一个用值“0”初始化的变量?

时间:2013-10-04 01:06:27

标签: c# function counter increment

这是我的C#编码。我想在每次调用此函数时递增变​​量计数器。有没有办法让计数器变量每次增加1我都记得这个函数?

private void _CalculateValue()
{
     double b = 0.1;

     int counter = 0;

     a = a * b;

     counter++;    
}

3 个答案:

答案 0 :(得分:4)

怎么样

class customClass
{

    int classLevelCounter = 0;

    private void _CalculateValue()
    {
        double b = 0.1;

        a = _a * b;

        classLevelCounter++;
    }

}

在你的问题中,counter在方法中创建并在方法结束后立即销毁(丢失其值),因为它的范围只是方法。因此,下次它将再次从0初始化。

在我的回答中,classLevelCounter即使在方法结束后仍保留其值,因为其范围为Class

这是一个有效的例子。

enter image description here

答案 1 :(得分:0)

你需要这样做:

int counter = 0;

private void _CalculateValue()
{
    double b = 0.1;

    a = _a * b;

    counter++;    
}

答案 2 :(得分:0)

只需要在方法之外移动变量声明。

class myClass
{    
    int counter = 0;
    private void _CalculateValue()
    {
         double b = 0.1;
         a = a * b;
         counter++;    
    }
}