0

これは私の C# コーディングです。この関数を呼び出すたびに、変数カウンターをインクリメントしたいと考えています。この関数を呼び出すたびにカウンター変数を 1 ずつインクリメントする方法はありますか?

private void _CalculateValue()
{
     double b = 0.1;

     int counter = 0;

     a = a * b;

     counter++;    
}
4

3 に答える 3

4

どうですか

class customClass
{

    int classLevelCounter = 0;

    private void _CalculateValue()
    {
        double b = 0.1;

        a = _a * b;

        classLevelCounter++;
    }

}

あなたの質問counterでは、メソッドで作成され、スコープがメソッドのみであるため、メソッドが終了するとすぐに破棄されます(値が失われます)。したがって、次回は再び0から初期化されます。

私の答えでclassLevelCounterは、メソッドがスコープを超えた後でも値を保持しますClass

これが実際の例です。

ここに画像の説明を入力

于 2013-10-04T01:08:29.220 に答える
0

これを行う必要があります:

int counter = 0;

private void _CalculateValue()
{
    double b = 0.1;

    a = _a * b;

    counter++;    
}
于 2013-10-04T01:09:57.210 に答える
0

変数宣言をメソッドの外に移動するだけです。

class myClass
{    
    int counter = 0;
    private void _CalculateValue()
    {
         double b = 0.1;
         a = a * b;
         counter++;    
    }
}
于 2013-10-04T01:13:31.073 に答える