Delphi – 相当于C#的三元运算符?

前端之家收集整理的这篇文章主要介绍了Delphi – 相当于C#的三元运算符?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Possible Duplicate:
07000

我知道Delphi没有C#中的三进制运算符。
即:

那么如何最好地代表这个函数调用?那里最干净的方法是什么?

如果有任何代码可以使用INSTEAD写一个单独的函数会很好吗?如果没有,最有效和/或最干净的代码代码是什么?

解决方法

当然可以使用
IfThen(SomeBooleanExpression,IfTrueReturnValue,IfFalseReturnValue)

返回值为数值(使用Math)或字符串(使用StrUtils)。但是请注意,这将在所有情况下评估两个参数 – 没有懒惰的评估,所以它不如C#中的?:运算符那么有效,只有正确的操作数被评估。

所以你不能做

y := IfThen(x <> 0,1/x,0)

最好的事情是坚持一个普通的

if x <> 0 then y := 1/x else y := 0;

猜你在找的Delphi相关文章