Thread Problem mit "Klasse" und Array Übergabe (6 answers)
Opened by FX at 2005-07-26 13:26

FX
 2005-07-26 13:26
#56692 #56692
User since
2005-07-23
4 Artikel
BenutzerIn
[default_avatar]
Hallo,

ich möchte einer Klasse einen Array übergeben der als Inhalt Adressen von Funktionen hat.

Übergabeparamter:
Code: (dl )
1
2
my $menuMain=menuClass->new();
$menuMain->InitMenuFunc (\&main::Test0, \&main::Test1);



Nur die Übergabe des Arrays funktioniert nicht, weder so:
Code: (dl )
1
2
3
4
5
6
7
8
9
sub InitMenuFunc {
    my $self=shift;
    # print "self: " . $self . "\n";
    my $idx = 0;
    foreach my $element ( @_ ) {
        $self->{$menuFunc[$idx]} = $element;
        $idx++;
    }
}

noch so:
Code: (dl )
1
2
3
4
sub InitMenuFunc {
    my $self=shift;
       self->{@menuFunc} = @_;
}



Der Aufruf der Funktionen, funktioniert auch nur über Umwegen über &$ref, kann ich die Funktion nicht direkt ausführen?:
Code: (dl )
1
2
3
    my $ref = $self->{$menuFunc[0]};
    print "ref: " . $ref . "\n";
    &$ref;


Grüße
Markus\n\n

<!--EDIT|FX|1122371472-->

View full thread Problem mit "Klasse" und Array Übergabe