Font
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]5669[/thread]

Pseudo Hashes (page 2)

Readers: 3


<< |< 1 2 >| >> 16 entries, 2 pages
eisbeer
 2003-08-30 17:04
#81429 #81429
User since
2003-08-29
347 articles
BenutzerIn
[Homepage] [default_avatar]
http://www.addison-wesley.de/katalog....-998415\n\n

<!--EDIT|eisbeer|1062248674-->
Die meisten PC Probleme befinden sich zwischen Bildschirm und Stuhl...
eisbeer
 2003-08-30 17:05
#81430 #81430
User since
2003-08-29
347 articles
BenutzerIn
[Homepage] [default_avatar]
Na toll, danke :)
Die meisten PC Probleme befinden sich zwischen Bildschirm und Stuhl...
BrownWolf
 2003-08-30 17:06
#81431 #81431
User since
2003-08-15
308 articles
BenutzerIn
[default_avatar]
Rofl ... ;)
Code (perl): ()
1
2
3
sub _{s;;xrqIpiql\\{}p{pl{R>rl{N{}gjwpkssq]>rl{N;;;*{{}=*{_};;
&#36{{}={q{{{}}}=>[reverse+split+reverse+q;}{;]};&#36{{}->{q{{{}}}}->[@{{}];}
&#36{{}=reverse+_(q{{}}=>q{{}})^chr(30)x+length&_(q{{}}=>,q{{}})and+print;
Strat
 2003-08-30 18:57
#81432 #81432
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
Pseudohashes sind eine Liste, deren 0. Element eine Hashreferenz enthaelt, und ueber die lesenderweise wie ein Hash zugegriffen werden kann.
Code: (dl )
1
2
3
4
5
6
7
8
my @pseudohash = (
{ 'key1' => 1, 'key2' => 2, 'key3' => 3 },
value1,
value2,
value3
);
print $pseudohash{'key1'}; # verwendung wie Hash; wird intern umgesetzt auf:
print $pseudohash{ $pseudohash[0]->{'key1'} };

Ein Pseudohash ist normalerweise schneller als ein Hash, und es werden nicht automatisch neue Key-Value-Paare angelegt, wenn z.B. jemand print $pseudohash{'key4'} verwendet, wuerde bei einem normalen Hash ein neuer Schluessel angelegt, und als Wert undef. Der Pseudohash hat jedoch das Problem, dass alle Arrays um einiges langsamer werden (ich glaube, so um die 30%).
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
pq
 2003-08-30 19:28
#81433 #81433
User since
2003-08-04
12194 articles
Admin1
[Homepage]
user image
@strat:
ist ein bisschen anders:
my $pseudohash = [
{ 'key1' => 1, 'key2' => 2, 'key3' => 3 },
value1,
value2,
value3
];
print $pseudohash->{'key1'}; # verwendung wie Hash; wird intern umgesetzt auf:
print $pseudohash->[ $pseudohash->[0]->{'key1'} ];


Edit:
Grün = strats änderungen\n\n

<!--EDIT|pq|1062263292-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Strat
 2003-08-30 19:56
#81434 #81434
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
@pq: korrekt (ist schon zu lange her, dass ich von denen begeistert war), nur
print $pseudohash->[ $pseudohash->[0]->{'key1'} ];\n\n

<!--EDIT|Strat|1062259062-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< |< 1 2 >| >> 16 entries, 2 pages



View all threads created 2003-08-30 05:18.