Согласно странице Perl док:Когда Perl «hash» хеширует?
Хэши неупорядоченные коллекции скалярных значений, проиндексированных по их ассоциированной строки ключа.
Я бы подумал Perl хэши заказал, так как они, как правило, построены с использованием массива:
my %h = ("a",1,"b", 2);
Если хэши Perl являются неупорядоченными, они должны быть «хэш» -ed, чтобы разрешить доступ. Вопрос в том, когда Perl хэш хеширует?
Если мы делаем:
my %h = ("1",1); #1
print $h{"1"}; #2
Я предполагаю, что эта строка # 1 делает хеширование внутренне.
Если хэш строится из массива:
#@a = ("1", 1);
my %h = @a;
Я предполагаю, что присваивание% ч делает хеширование.
Пожалуйста, подтвердите правильность моего предположения, и я, кажется, не нашел информацию в любом месте в Интернете.
Это может помочь: http://www.perl.com/pub/2002/10/01/hashes.html –
'(" a ", 1," b ", 2)' на самом деле список, а не массив: http://stackoverflow.com/questions/6023821/perl-array-vs-list –
@huntermcmillen Спасибо за указание, но я не думаю, что здесь основные проблемы – texasbruce