Schrift
[thread]6704[/thread]

Hash Key löschen in einer funktion



<< >> 5 Einträge, 1 Seite
esskar
 2005-02-15 03:00
#51702 #51702
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
my %hash = (via => 'test', foo => 'bar');

sub foo {
my %args = @_;
delete $args{via};
1;
}

foo(%hash);

print "$_ : $hash{$_}\n" foreach (keys %hash);


Hi. Wie schaff ich es, dass außerhalb von foo in %hash der Key 'via' nicht mehr enthalten ist. Die Funktion muss 1 zurück geben und darf auch keine Referenz als Parameter bekommen.
esskar
 2005-02-15 04:08
#51703 #51703
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hat sich erleigt; hab es anders gelöst!
Crian
 2005-02-15 17:18
#51704 #51704
User since
2003-08-04
5870 Artikel
ModeratorIn
[Homepage]
user image
Wie denn? Nach Deinen Vorgaben glaube ich nämlich, dass es gar nicht geht (nicht als Referenz und Rückgabewert 1).
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
esskar
 2005-02-15 18:10
#51705 #51705
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=Crian,15.02.2005, 16:18]Nach Deinen Vorgaben glaube ich nämlich, dass es gar nicht geht (nicht als Referenz und Rückgabewert 1).[/quote]
stimmt...
die Betonung lag auf "anders"; damit wollte ich ausdrücken, dass ich mich selbst nicht an meine Vorgaben gehalten hab! :)
Crian
 2005-02-15 18:15
#51706 #51706
User since
2003-08-04
5870 Artikel
ModeratorIn
[Homepage]
user image
cool, dann hätte ich auch eine Lösung ;)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
<< >> 5 Einträge, 1 Seite



View all threads created 2005-02-15 03:00.