Операнд1 ? операнд2 : операнд3полностью заимствована из языка С и работает точно так же, как и ее двойник: если операнд1 истинен, то возвращается значение операнд2, в противном случае операнд3:
($n == 1) ? "male" : "female";
$а = $yes ? $b : @b; # Скалярный контекст. Если # возвращается массив @b, то # переменной $а присваивается # количество его элементов
($а = $yes ? $b : @b) = @с;
($a % 3) ? ($a += 2) : ($a -= 2);опустить скобки вокруг операндов
$а % 3 ? $a += 2 : $a -= 2;то оно будет интерпретировано следующим образом:
(($а % 3) ? ($a += 2) : $a) -= 2;так как операция выбора имеет более высокий приоритет (то есть выполняется при вычислении выражения раньше), чем любая операция сложного присваивания.
Следующая страница | Содержание главы |
Нет комментариев. Оставить комментарий: |