这是一些代码的例子......
Private Sub btnDoSomething_Click(sender As System.Object, e As System.EventArgs) Handles btnDoSomething.Click
If True Then
Try
Catch ex As Exception
End Try
Else
Try
Catch ex As Exception
End Try
End If
End Sub
在true和false上添加Try / Catch是否有任何差异,或者只是在一个Try / Catch中包装整个If?
答案 0 :(得分:1)
一般来说,肯定存在差异,但问题是你的情况存在差异。
你应该只在你做某事时才发现异常。如果if / else在抛出异常的情况下需要不同的操作,那么你应该把try / catch放在里面。否则 - 外面。在这两种情况下 - 只有你会对它们采取任何行动。
答案 1 :(得分:1)
是的,这完全取决于如何处理每个范围内的代码。请记住,您可以在每个部分中使用完全不同的代码,有时您可能希望根据条件是否满足来处理相同的异常类型。
如果您只想要通用异常处理(错误记录等),那么您应该将所有内容放在try catch中。
答案 2 :(得分:1)
这取决于。如果If部分中的异常处理需要与Else部分中的异常处理不同,那么将try catch放在每个部分中。否则围绕它。
循环也是如此。异常是否意味着您需要停止循环?然后你可以包围它。如果循环内发生异常,你需要继续吗?然后把try catch放在循环中。即使你不需要继续前进,你也可以在循环内完成。
这个问题太笼统了。这取决于你想做什么。