what is the purpose of the iif in vb

2019-08-02 01:01发布

问题:

So, what is the purpose of the iif in vb? I know what it does, but I can't uderstand what is it for?

Update: I know what it does. But "if(,,)" does the same. The only difference is that "Iif" will evaluate both expressions. So what is the purpose of doing this?

Thank you!

回答1:

It allows for a concise boolean logic expression which produces a value

Dim value = Iif(someTest, trueValue, falseValue)

Without the Iif or If operator this has to be expanded into a more combursome set of statements

Dim value;
If someTest Then
  value = trueValue
Else
  value = falseValue
End If


回答2:

If I remember correctly, IIF(a, b, c) returns b if a is true, or c if a is false.



回答3:

There is no need for Iif in new VB.NET code, but has been kept for backward compatibility with existing code.

If you do ever still want Iif, code it yourself as Iif(Of T) at least, so you can avoid the casting that is otherwise required when you have Option Strict On.



标签: vb.net iif