Visual Basic 3項演算子 の危険性

LONERさん
LONERさん
C言語で使うような3項演算子は VisualBasic にないだろうかと思って調べていたら・・・ありました。IIF関数を使います。
variable = Iif(condition, process_true, process_false)
ただしこの関数には危険なところがあります。
Iif(list.length > index, list(index), list(0)) と書いたとき、条件の True/False にかかわらず、list(index), list(0) が評価されます。ということでエラーとなってしまいます。
VisualBasic で3項演算子を使うのは避けた方が良いです。
3項演算子っていうか、関数だから、パラメータは先に計算しておかないといけないんだよね。
LONERさんのブログ一覧