2015-02-06 43 views

cevap

8

keys(%S)[email protected]_fields; anlamı var keys(%S) = scalar @C_fields;

ve bir lvalue olarak kullanılır perldoc -f keys

itibaren aynıdır, tuşları izin verir , verilen hash için tahsis edilen hash kovalarının sayısını artırır. Eğer hash büyük olacaksa, bu size bir verimlilik ölçüsü kazandırabilir. (Bu $ # diziye daha çok sayıda atayarak önceden uzanan bir dizi benzer.) Eğer

keys %hash = 200;

sonra% karma bunun için ayrılan en az 200 kova olacak derseniz - Bunlardan 256 Aslında, bu ikisinin bir sonraki iktidarına doğru yuvarlandığı için.

Yani karma %S@C_fields dizinin en azından boyuttadır bölüm sayısını alacak.

+0

Anahtarlar hakkında daha fazla bilgi için: http://stackoverflow.com/questions/6723172/what-is-4-16-in-hashes –

+0

[Bu makale] (http://blog.codinghorror.com/code-tells- siz-nasıl-yorum-söyle-siz-neden /) akla, özellikle son noktaya gelir. – RobEarl

+0

@RobEarl demek, yukarıda açıklamak için neden ilk etapta kepçe sayısını manuel olarak atamak istesin? –