Бинарные операторы присваивания

Такие выражения, как $fred = $fred + 5 (когда одна переменная присутствует в обеих частях присваивания), настолько часто встречаются в Perl (а также в C и Java), что появилось удобное сокращение для операции изменения переменной – бинарный оператор присваивания. Почти все бинарные операторы, вычисляющие новое значение, имеют соответствующую форму бинарного присваивания с суффиксом =. Например, следующие две строки эквивалентны:

$fred = $fred + 5; # Без бинарного оператора присваивания
$fred += 5; # С бинарным оператором присваивания

Еще один пример эквивалентных команд:

$barney = $barney * 3;
$barney *= 3;

В каждом случае оператор каким-то образом изменяет текущее значение переменной вместо простой его замены результатом нового выражения. Другой распространенный оператор присваивания создан на базе оператора конкатенации строк ( . ); комбинация двух операций дает оператор присоединения ( .= ):

$str = $str . " "; # Присоединить пробел к $str
$str .= " "; # То же с оператором присваивания

Почти все бинарные операторы существуют в форме с присваиванием. Например, оператор возведения в степень записывается в виде **=. Таким образом, fred **= 3 означает «возвести $fred в третью степень и поместить результат обратно в $fred».

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела Perl на эту тему:
Автоматическое преобразование между числами и строками
Вещественные литералы
Встроенные предупреждения Perl
Выбор имен переменных
Вывод командой print

Вернуться в раздел: Perl / 1. Скалярные данные