Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Andrey Sapozhnikov                   2:5020/400     15 May 2003  17:33:10
 To : Roman Kirjanov
 Subject : Re: Константы и ключи хэша
 -------------------------------------------------------------------------------- 
 
 Roman Kirjanov wrote:
 
 > Hello, All!
 > 
 > my %hash = ('one' => 'один', 'FOO' => 'This is FOO');
 > use constant FOO => 'one';
 > print $hash{FOO};
 > 
 > Можно ли как-нить добиться результатов, как от print $hash{(FOO)}; ну там
 > переменную какую внутреннюю, use какой-нить. Hе нравится $hash{(FOO)}: этож
 > можно и $hash{(((FOO)))} написать - тоже будет работать.
 
 perldoc constant
 
 ...
   You can get into trouble if you use constants in a context which auto-
   matically quotes barewords (as is true for any subroutine call).  For
   example, you can't say $hash{CONSTANT} because "CONSTANT" will be
   interpreted as a string.  Use $hash{CONSTANT()} or $hash{+CONSTANT} to
   prevent the bareword quoting mechanism from kicking in.  Similarly,
   since the "=>" operator quotes a bareword immediately to its left, you
   have to say "CONSTANT() => 'value'" (or simply use a comma in place of
   the big arrow) instead of "CONSTANT => 'value'".
 ...
 
 -- 
 Андрей
 --- ifmail v.2.15dev5
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по:

 Тема:    Автор:    Дата:  
 Константы и ключи хэша   Roman Kirjanov   14 May 2003 21:34:11 
 Константы и ключи хэша   Ivan Frolcov   15 May 2003 13:24:24 
 Re: Константы и ключи хэша   Artem Chuprina   15 May 2003 15:45:03 
 Re: Константы и ключи хэша   Andrey Sapozhnikov   15 May 2003 17:33:10 
Архивное /ru.cgi.perl/6577be8d7191.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional