|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 06 Mar 2002 11:02:47 To : Victor Wagner Subject : Re: Hе понятно -------------------------------------------------------------------------------- Здравствуй, Victor Wagner. VW> Nikolay Pichtin <Nikolay.Pichtin@f30.n5056.z2.fidonet.org> VW> wrote: NP>> Hi ! All ! NP>> Встретил такую запись и не понял. NP>> 1. $FirstItem ||=0; VW> Разбираем по пунктам VW> 1. Знак двухместной операции + знак равенства VW> это такое специальное сокращение. Hапример $a+=$b сокращение VW> для $a=$a+$b. VW> Т.е. следует читать VW> $FirstItem = $FirstItem || 0; Скажем так, человеку, который знает только паскаль, следует читать именно так. Остальным - в классических случаях "добавить $b к $a", "домножить $a на $b" и т.д., с неклассическими сложнее, ибо естественный язык для этого развит плохо. В общем случае - "провести указанную операцию с указанным правым операндом над левым операндом прямо по месту". VW> 2. Преобразованную строку пытаемся произнести в слух: VW> в переменную FirstItem занести ее предыдущее значение или ноль. Соответственно, оригинальное выражение интерпретируется "если $FirstItem ложно с точки зрения перла, приравнять ее нулю". Ибо семантика || - не "или", а "если первое истинно, то первое, иначе второе". -- Artem Chuprina Communiware.net RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/63595e90a083.html, оценка из 5, голосов 10
|