|
|||||||||||||||||||||||||||
Peter Makholm wrote: > Christian Hemmingsen <sslug@sslug> writes: > > > Nej. Man bestemmer da helt selv hvordan man vil have sin hash. > > Forkert. Ties er ikke hashes! Ties giver mulighed for at tilgå > objekter på måder, der ligner de forskellige variabeltyper, dette gør > det ikke som det samme som de forskellige variabeltyper. Der findes ikke en variabeltype der hedder en tie. Tie er noget man gør ved en variabel, hvorved man lader det være op til programmøren at stå for implementeringen. Lad os tage et eksempel. #!/usr/bin/perl %h = (); $r1 = \%h; print "$r1\n"; print ref $r1, "\n"; require DB_File; tie %h, 'DB_File', 'mydbfile'; $r2 = \%h; print "$r2\n"; print ref $r2, "\n"; # end of script output: $ ./dbf.pl HASH(0x81034d4) HASH HASH(0x81034d4) HASH Ja, det er den samme variabel, det kan der vist ikke være nogen tvivl om. Den var en hash før jeg trak DB_File ind med require og den er det også bagefter, den relative memory adresse er endda også den samme. Christian Hemmingsen
|
||||||||||||||
|
||||||||||||||