delphi有无iif函数(100分)

  • 主题发起人 主题发起人 小明
  • 开始时间 开始时间

小明

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi有无相当于vb的iif函数
 
vb中的iif是干嘛的
 
很遗憾 delphi 中没有 iif 函数. if ... then ... else 不是比 iif 逻辑上更
明确吗, iif 一般只是用于解释执行的语言, 编译后执行的都用 if then else.

要想自己写一个 iif 函数十分简单(此处置列出三个类型, 你可以增加更多的类型):
function iif(Exp: boolean; TrueValue: double; FalseValue: double): double; overload;
function iif(Exp: boolean; TrueValue: integer; FalseValue: integer): integer; overload;
function iif(Exp: boolean; TrueValue: String; FalseValue: string): string; overload;

在 implementation 段写出各自的代码:
function iif(Exp: boolean; TrueValue: double; FalseValue: double): double; overload;
begin
if exp then result := TrueValue else result := FalseValue;
end;
function iif(Exp: boolean; TrueValue: integer; FalseValue: integer): integer; overload;
begin
if exp then result := TrueValue else result := FalseValue;
end;
function iif(Exp: boolean; TrueValue: String; FalseValue: string): string; overload;
begin
if exp then result := TrueValue else result := FalseValue;
end;
 
iif 和 C 中的 ?: 差不多,有时我也想要,但是,Delphi 中没有,很遗憾!
 
没有就结束题目把
 
书写习惯而已!
 
接受答案了.
 
后退
顶部