我没有读过太多关于它的内容,但是下面链接的作者建议我不要使用"冒泡"来集中VBA中的错误处理.
但我不确定他为什么这么推荐,而且他没有真正解释.
有人能告诉我为什么我应该在每个程序中使用错误处理而不是使用"冒泡"吗?或者至少,你知道为什么作者说不?
谢谢.
数学相关函数中错误处理的好习惯是什么?我正在建立一个专门的函数库(模块),我的主要目的是让调用这些函数的代码更容易调试 - 而不是制作一个闪亮的用户友好的错误处理工具.
下面是VBA中的一个简单示例,但我也有兴趣听取其他语言的说法.我不太确定我应该在哪里返回错误消息/状态/标志.作为额外的论点?
Function AddArrays(arr1, arr2)
Dim i As Long
Dim result As Variant
' Some error trapping code here, e.g.
' - Are input arrays of same size?
' - Are input arrays numeric? (can't add strings, objects...)
' - Etc.
' If no errors found, do the actual work...
ReDim result(LBound(arr1) To UBound(arr1))
For i = LBound(arr1) To UBound(arr1)
result(i) = arr1(i) + arr2(i)
Next i
AddArrays = result
End Function
Run Code Online (Sandbox Code Playgroud)
或类似以下内容.该函数返回一个布尔"成功"标志(如下例所示,如果输入数组不是数字等,则返回False),或者某个其他类型的错误号/消息.
Function AddArrays(arr1, arr2, result) As …Run Code Online (Sandbox Code Playgroud)