6

return ステートメントが何をしているのか正確に把握するのは難しいです。たとえば、この方法では...

    public int GivePoints(int amount)
    {
        Points -= amount;
        return amount;
    }

リターンの後にランダムな整数を配置しても、GivePoints メソッドはまったく同じことを行います。では、return ステートメントは何をしているのでしょうか。

4

5 に答える 5

5

Returnは、関数を呼び出すと関数を終了します。したがって、returnステートメントの下にあるものはすべて実行されません。

基本的にreturn、関数が実行するはずの操作が実行されたことを示し、この操作の結果(該当する場合)を呼び出し元に返します。

于 2013-03-06T02:05:49.093 に答える
3

return現在のメソッドから呼び出し元に制御を返し、送信された引数を返します。あなたの例では、GivePointsは整数を返し、引数として整数を受け入れるように定義されています。あなたの例では、返される値は実際には引数の値と同じです。

戻り値はGivePoints、この例では、定義されたメソッドを呼び出すコード内の別の場所から使用されます。

int currentPoints = GivePoints(1);

currentPointsこれは、値1が割り当てられることを意味します。

これが分解されるのは、それGivePointsが評価されるということです。の評価はGivePoints、メソッドが返すものに基づいています。GivePoints入力を返すためGivePoints、上記の例では1と評価されます。

于 2013-03-06T02:07:58.497 に答える
0

あなたの例では、関数はあなたがそれに送っている正確な数を返しています。この場合、渡した値はすべてamount。したがって、現在のコードでの戻りは少し無意味です。

したがって、あなたの例では:

int x = GivePoints(1000);

xは1000に等しくなります

于 2013-03-06T02:05:32.257 に答える
0

当初の目標の単なる推測

public int GivePoints(int amount)
{
    Points -= amount;
    return Points;
}

したがって、 return はポイントの更新された値を返します

これがあなたのケースでない場合、コードは

public void GivePoints(int amount)
{
    Points -= amount;
}
于 2013-03-06T02:11:09.293 に答える