问个弱智问题,在多If条件判断中使用大量相同代码,不单独拿出来,会影响软件运行速度么? ( 积分: 30 )

  • 主题发起人 主题发起人 nettidy
  • 开始时间 开始时间
不会,但不合理。
 
速度肯定会有影响,只不过感觉不出来!
而且这种多层if容易出问题,不符合编程规范
 
我觉得会提高运行速度,但是不合理。
因为单独拿出来成为函数会有出入栈以及Call调用
 
我就经常写这样的代码
if xxxx then
yyyyy
else if xxx2 then
yyyy2
else if xxx3 then
yyyy3
else if xxx4 then
yyyy4
else if xxx5 then
yyyy5
else if xxx6 then
yyyy6
else if xxx7 then
yyyy7
else if xxx8 then
yyyy8
else if xxx9 then
yyyy9;

尽量把可能为true的条件放前面。代码效率还是很高的。
另外,如果可判断的条件是有序类型,建议用
case xxx of 语句,因为case语句编译器会用hash表来实现条件跳转,无须层层比较,效率更高。
 
ufo!
又学习了一招,我就喜欢用CASE,不过原来不知道这样有什么好处,这下明白了[:)]
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
756
import
I
I
回复
0
查看
595
import
I
后退
顶部