Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

О синтаксисе. In place variable declaration (Danissimo)
Author Message
Danissimo
Guest





Карма: 388
   поощрить/наказать


PostPosted: Mon Sep 04, 2006 4:07 pm (написано за 4 минуты 47 секунд)
   Post subject: О синтаксисе. In place variable declaration
Reply with quote

Вопрос не о том, как заставить работать, лишь бы работало, а о том, что перл может или нет и почему.

Пример:

my %x = ...;
while (my($key, $value) = each(%x)) ...

Здесь переменные $key и $value одновременно объявляются и инициализируются. Другой пример:

use Getopt::Std;
getopts("...", my $x = {});
print $x->{'A'};

Здесь то же самое -- объявляется и инициализируется переменная $x -- за исключением того, что значение перемнной тут же передается в функцию.

Внимание, вопрос! Можно ли 2-ю и 3-ю строчки следующиего кода как-нть объдинить:

use Getopt::Std;
my %x;
getopts("...", \%x);
print $x{'A'};

Если да, то как?
Back to top
Ant
Сотрудник «Лаборатории»



Joined: 17 Jun 2003
Posts: 6840
Карма: 129
   поощрить/наказать


PostPosted: Mon Sep 04, 2006 8:21 pm (спустя 4 часа 13 минут; написано за 14 секунд)
   Post subject:
Reply with quote

Почти также:
Code (perl): скопировать код в буфер обмена
getopts( \ my ($x ) );

print (www.perldoc.com/perl5.6/pod/func/print.html) $x;

sub getopts {

        ${$_[0]} = 1;

}
Back to top
View user's profile Send private message Send e-mail
Guest






Карма: 388
   поощрить/наказать


PostPosted: Tue Sep 05, 2006 3:25 pm (спустя 19 часов 4 минуты; написано за 10 секунд)
   Post subject:
Reply with quote

ЗАЧТЕНО!
Back to top
Guest






Карма: 388
   поощрить/наказать


PostPosted: Tue Sep 05, 2006 3:26 pm (спустя 45 секунд; написано за 6 секунд)
   Post subject:
Reply with quote

Вопрос решен, тему можно закрыть.

Вопрос решен, тему можно закрыть.
Back to top
Ant
Сотрудник «Лаборатории»



Joined: 17 Jun 2003
Posts: 6840
Карма: 129
   поощрить/наказать


PostPosted: Tue Sep 05, 2006 4:05 pm (спустя 38 минут)
   Post subject:
Reply with quote


М

Тема закрыта.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   This topic is locked: you cannot edit posts or make replies. All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You cannot download files in this forum.
XML