對於我來說,很難理解返回聲明究竟做了什麼。例如,在這種方法...C#中的return語句到底做了什麼?
public int GivePoints(int amount)
{
Points -= amount;
return amount;
}
即使我把返回之後的任何隨機整數,該GivePoints方法仍然沒有完全一樣的事情。那麼,回報聲明在做什麼?
對於我來說,很難理解返回聲明究竟做了什麼。例如,在這種方法...C#中的return語句到底做了什麼?
public int GivePoints(int amount)
{
Points -= amount;
return amount;
}
即使我把返回之後的任何隨機整數,該GivePoints方法仍然沒有完全一樣的事情。那麼,回報聲明在做什麼?
在你的例子中,函數返回你發送給它的確切數字。在這種情況下,您輸入的值爲amount
。因此,當前代碼的返回有點沒有意義。
所以在你的例子:
int x = GivePoints(1000);
x將等於1000
你應該已經解釋過,返回後的任何東西都不會執行,這似乎是提問者真正的難題。 – Ron 2017-07-06 14:16:58
返回調用它時將退出功能。無論如何,下面的return語句都不會被執行。
基本上,return
表示函數應該執行的任何操作都已執行,並將此操作的結果返回給調用者(如果適用)。
return
將從當前方法返回到調用方的控制權,並返回與它一起發送的任何參數。在你的例子中,GivePoints
定義爲返回一個整數,並接受一個整數作爲參數。在你的例子中,返回的值實際上與參數值相同。
從代碼中的其他位置使用返回的值,該位置調用此示例中定義的方法GivePoints
。
int currentPoints = GivePoints(1);
將意味着currentPoints
被分配的1
這是什麼打破了到是GivePoints
評估值。 GivePoints
的評估基於該方法返回的結果。 GivePoints
返回輸入,因此,GivePoints
將在上面的示例中評估爲1。
只是你原來的目標
public int GivePoints(int amount)
{
Points -= amount;
return Points;
}
所以回到返回點
的更新值,如果這不是你的情況猜測的代碼應該是
public void GivePoints(int amount)
{
Points -= amount;
}
我不確定如何回答這個問題,而不是說它*返回一個值給調用方法。 – 2013-03-06 02:05:38