Proc map 'tvori' nove polozky pole?
Pavel ©merk
xsmerk na informatics.muni.cz
Čtvrtek Únor 14 12:49:45 MET 2002
Honza Pazdziora wrote:
> On Thu, Feb 14, 2002 at 10:36:13AM +0100, Pavel ©merk wrote:
>>$ perl -e '$,=","; print $a[0], scalar @a, map($_, ($a[0])), scalar @a,
>>"\n"'
>>,0,,1,
>>
>>muze mi nekdo rict, proc tomu tak je? Procetl jsem dokumentaci k map,
>>ale nejak jsem tam nenasel nic, co by mi to vysvetlovalo (ze ten map ma
>>vedlejsi efekt $a[0] = undef).
>
> U map a for dochazi k aliasovani $_ s tim prislusnym prvkem pole. Cimz
> proste ten prvek toho pole vzniknout musi, protoze jinak by nebylo
> s cim aliasovat (je muj naivni vyklad chovani).
No mne prave nejak nebylo uplne jasne, proc musi vzniknout pri tomhle
aliasovani a nemusi vzniknout pri pouziti $a[0]. Ale je fakt, ze pri
pouziti \$a[0] vznikne taky, takze to zrejme je docela konzistentni.
> Ty jsi v nejakem tymu, ktery odhaluje nejvetsi obskurnosti Perlu?
> Nejaci Python fighters? ;-)
Jenom se v tom snazim trochu programovat. ;-)
P.
Daląí informace o konferenci Perl