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

Dereferenzierung



<< >> 3 Einträge, 1 Seite
Froschpopo
 2006-10-05 05:21
#70495 #70495
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
Ich weiss, mein Hang zu Referenzen nimmt langsam krankhafte Züge an.
Mittlerweile könnte man schon von einer zwanghaften Ambivalenzneurose reden.
Und wie immer, direkt zur Sache:
Der Code:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
my @array = ('Froschpopo', 'Hallo Welt');

&funktion(\@array);

sub funktion {
my $args = shift;

my $output = &weiter($args);

my $name = $output->{NAME}->[0];
print "Hallo $name\n";

}

sub weiter {
my $args = shift;
my %hash = (NAME => \$args->[0]);
return \%hash;
}

ist sowas möglich? Ich möchte $args->[0] _nicht_ in "weiter()" deferenzieren.\n\n

<!--EDIT|Froschpopo|1160011354-->
sid burn
 2006-10-05 11:32
#70496 #70496
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
Naja, als erstes enthielt dein Skript schonmal ein paar Fehler. Wenn du es so wie es ist versuchst auszuführen, lässt sich dein Skript nichtmal ausführen.

Ansonsten wenn du weißt das du nur den ersten Wert vom Array haben möchtest, dann kannst du den Wert auch direkt beim shift dereferenzieren. In der Funktion musst du es aber machen, wenn du eine Arrayreferenz übergeben bekommst.

Code: (dl )
$args = shift->[0]


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
my @array = ('Froschpopo', 'Hallo Welt');

funktion(\@array);

sub funktion {
my $args = shift;

my $output = weiter($args);

my $name = $output->{NAME};
print "Hallo $name\n";

}

sub weiter {
my $name = shift->[0];
my %hash = (NAME => $name);
return \%hash;
}
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
renee
 2006-10-07 20:42
#70497 #70497
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@Froschpopo: Es wäre echt gut, wenn Du genau beschreiben würdest, was das Ergebnis sein soll, wie Du es haben möchtest, wie es im Moment ist und welche Fehlermeldungen es gibt. Aber pq hat Dir ja schon relativ häufig einen Link zu nem Wiki-Eintrag gepostet, in dem beschrieben steht, wie man richtig fragt.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 3 Einträge, 1 Seite



View all threads created 2006-10-05 05:21.