【发布时间】:2015-12-11 00:03:36
【问题描述】:
我的代码如下所示:
Select Case IsNumeric(somevariable)
Case True
Resume Next
Case False
Call notnum
Else
Call MyErrorHandler
End Select
这是不是想多了? IsNumeric 是否有可能在这里返回 True 或 False 以外的值,或者这是一种不好的编程习惯?
【问题讨论】:
-
isnumeric 只会返回一个布尔值。 msdn.microsoft.com/en-us/library/6cd3f6w1(v=vs.90).aspx
-
isnumeric 永远不会出错
-
@ThomasShera 使用
Resume Next是不恰当的。看我的回答 -
@Nick.McDermaid 这当然是人为的,但这个例子的重点是至少有可能调用
IsNumeric可能会触发一个错误,所以至少可以想象这样一个call 可能需要嵌入到错误处理程序中。 -
是的,但是那里没有错误处理程序,只是一个错误混淆器:)