建议61:避免在finally内撰写无效代码在阐述建议之前,需要先提出一个问题:是否存在一种打破try-finally执行顺序的情况,答案是:不存在(除非应用程序本身因为某些很少出现的特殊情况在try块中退出)。应该始终认为finally内的代码会在方法return之前执行,哪怕 ...
建议61:避免在finally内撰写无效代码
在阐述建议之前,需要先提出一个问题:是否存在一种打破try-finally执行顺序的情况,答案是:不存在(除非应用程序本身因为某些很少出现的特殊情况在try块中退出)。应该始终认为finally内的代码会在方法return之前执行,哪怕return在try块中。
正是这点,可能会让你写出无效的代码,有时候,这样的无效代码会是一个隐藏很深的Bug。
看下面代码:
private static int TestIntReturnBelowFinally() { int i; try { i = 1; } finally { i = 2; Console.WriteLine("\t将int结果改为2,finally执行完毕"); } return i; }
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:编写高质量代码改善C#程序的157个建议——建议61:避免在finally内撰写无效代码
关键词:C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。