2013-02-14 50 views
0

我一直在函數中使用多個return語句一段時間,我發現它更具可讀性並避免了許多條件塊。我發現很多Q的建議是單個函數的出口點,我不會爲此找到合理的解釋。 許多代碼分析工具都建議爲該函數提供一個單一的退出點。 誰能告訴我爲什麼這種方法更可取?爲什麼一個函數的單個退出點是首選?

謝謝

+1

沒有代碼路徑早退出功能,基本上是這樣。它使分析程序流程更容易,但在每個調用都可能導致拋出異常(並因此函數返回較早)的世界中,我發現這種方法越來越有用。 – 2013-02-14 06:38:42

回答

0

通過使用單個返回語句,您通常使用較少的代碼。例如:

-(bool)testMethod { 
If(condition) 
return true; 
} 

如果條件不符合,它將返回false,所以沒有必要添加} else {return false。

根據我的經驗總是最好儘可能高效地編寫代碼,並通常有更有效的方式比寫一堆如果else語句

相關問題