专家来了!
![[Love]](/static/emoticons/Love.png)
IIf函数比If语句快,是当然的,
If只是几个判断和跳转指令,而IIf需要调用vb库函数,还要转换条件句类型(尽管你的类型完全匹配),然后判断,再取结果句,再转换类型
加Else比不加Else会快:
这个只是特例,你的代码编译之后,运行流程是这样的:
有else的
赋 t为0
判断 j - c > 0(成立)
如果 不成立,跳到lp1
赋 t为-90(也就是10-100)
lp1:继续
可以看出,"如果"到lp1的那一段并没有执行
没else的
赋 t为-90
判断 j - c > 0(成立)
如果 不成立,跳到lp1
赋 t为0(也就是10-100)
lp1:继续
可以看出,"如果"到lp1的那一段执行了
事实上,可执行文件只是多执行了一条机器代码,很不明显,当然,在VB_IDE里就会扩大无数倍