在閱讀MCSD學習指南時,我注意到作者說在一個聲明返回類型void
的方法中包含return
語句是非法的。然而,當我創建了下面的方法,Visual Studio中沒有標記在編輯器中,也沒有無法編譯:你可以使用聲明爲void的C#方法中的「return」語句嗎?
private void ReturnNothing()
{
return;
}
什麼是真正的答案呢?這合法嗎?
在閱讀MCSD學習指南時,我注意到作者說在一個聲明返回類型void
的方法中包含return
語句是非法的。然而,當我創建了下面的方法,Visual Studio中沒有標記在編輯器中,也沒有無法編譯:你可以使用聲明爲void的C#方法中的「return」語句嗎?
private void ReturnNothing()
{
return;
}
什麼是真正的答案呢?這合法嗎?
是的,這絕對是合法的。
如果您在返回後嘗試設置一個值,這只是非法的。這是錯誤的return 0;
筆者很可能指的是形式
return value ;
當返回類型== void
這實際上是無效的(但有效並在需要時返回類型!= void
)。
可能重複[在壞方法中使用return是不好的做法?](http://stackoverflow.com/questions/1283325/is-it-bad-practice-to-use-return-inside-a -void-method) –
請參閱http://stackoverflow.com/questions/1283325/is-it-bad-practice-to-use-return-inside-a-void-method獲取答案,以及與之相對的原因。 –
不要以爲它是前兩個問題的完全重複。一點也不。 –