Создание серверных приложений на языке PERL


Хэши slice - часть 3


{

$$abc=$myhash{$abc};

}

print "\$name=$name; \$age=$age\n и т.д.";

либо так:

$$_ = $myhash{$_} for keys %myhash;

что в принципе одно и то-же...

from: fido7.ru.perl

Объявление анонимного хеша:

Ссылки на существующие данные часто применяются для передачи аргументов функции, но в динамическом программировании они бывают неудобны. Для любой переменной

есть два параметра, е имя и адрес области памяти, где хранится эта переменная. Скалярная величина, хранящая адрес области памяти, назвается ссылкой. Значение, хранящееся в памяти по данному адресу называется субъектом(referent).

Анонимные хеши в perl могут создаваться явно. При этом выделяется память для хеша и возвращается ссылка на не .

$hash{map{$_ => $_*$_}(0 .. 4)}

while(($k, $v) = each %$hash){

print "$k => $v\n";

}

print $hash->{"3"}, "\n";

в цикле использовалась ссылка $hash на анонимный хеш.

Обратиться к нужному элементу хеша можно и при помощи ассоциативного оператора стрелка ->:

print $hash->{"3"}, "\n";

Пример использования анонимного хеша для выкидывания повторяющихся элементов из массива:

keys %{{ map { $_, 1 } @array }} # @array -> anonymous hash -> keys

Источник: Преф-Ньюс




Начало  Назад  Вперед



Книжный магазин