>用if ... then ... else ...也是一样的效果。
>我碰到再告诉你......三少 :o)

解决方案 »

  1.   

    if else
     
    case 
      

  2.   

    很遗憾 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;