問題: 我相信我在編程這裏缺少一些重點。我想創建一些代碼路徑不返回任何東西的方法。例如用於錯誤處理。如何故意有一個代碼路徑不返回一個int值在C#
例子: public static int calculateArea(int width, int length){ if(length < 0 || width < 0){ //don't want to return anything as negative distance is impossible //Execute my error handling here } else{ int area = length * width; return area; } }
問題:很簡單,有沒有辦法覆蓋的事實,你必須返回所有代碼路徑的值?
潛在解決方案我在網上看到過一個解決方案,其中錯誤處理代碼路徑返回一個特定值,因此您知道忽略它。但是,這似乎是一個非常不穩定的解 如果有更好的方法來編寫這些類型的方法,我很樂意重構我的代碼。
爲什麼這個問題是原創的:我覺得這個問題是原創的,因爲我一直無法找到一個具體的答案在網上或在SO論壇。
'的問題:很簡單,有沒有辦法覆蓋的事實,你必須在所有代碼路徑中返回一個值?'很簡單** NO **,'我認爲這個問題是原創的'不,你只需要閱讀更多關於c#/。Net – Eser
你可以拋出異常。 – juharr
@juharr如果拋出一個異常,你不必返回一個值? –