Определяем, что хэш будет содержать около 100 записей:
keys( %hash ) = 100;
URL:
Обсуждается: http://www.opennet.me/tips/info/529.shtml
что печатает
print scalar keys %hash
?у меня получается что хэш будет содержать около 0 записей
следовательно это парево, а не совет
>что печатает
>print scalar keys %hash
>у меня получается что хэш будет содержать около 0 записейСоветуют ведь не как заполнить хэш, а как сразу зарезервировать память в расчете на его примерный размер в будущем.
Вообще это имеет смысл когда keys(%x) присваивают достаточно большое значение и что его не понадобится уменьшать. Perl экономит примерно половину действий на создание следующего ключа/элемента при этом.
На мой личный взгляд присваивать число меньше 1000 смысла нет. А вот 1000 или тем более 2000 например - это может пригодиться.
Уменьшать размер хеша кстати таким образом нельзя.