Perlについての質問箱 3箱目
■ このスレッドは過去ログ倉庫に格納されています
0055デフォルトの名無しさん
NGNGちょっと誤解を招く表現だな。>…式全体は無視され…
$a = 1; $b = 2; $c = 5;
$a ? $b = $B = 3 : $c = 4; print $a,$b,$B,$c; # 1435
$a = 0; $b = 2; $c = 5;
$a ? $b = $B = 3 : $c = 4; print $a,$b,$B,$c; # 024
条件演算子 ?: は2番目と3番目のオペランドが有効な左辺値
且つ同じコンテキストなら、それ自身が左辺値に成り得る。
つまり上の例だと ($a ? $b = $B = 3 : $c) = 4; で、$a の
真偽によって $b か $c に 4 が代入される。
■ このスレッドは過去ログ倉庫に格納されています