Thread Perl - Sub Routinen Parameter. (33 answers)
Opened by Gast at 2004-04-13 21:22

Gast Gast
 2004-04-18 16:02
#81544 #81544
Nochmal zurück zu Deinem Test-Beispiel:

Wenn Du innerhalb einer Klasse eine Funktion aufrufen willst, dann kannst Du das tatsächlich ganz einfach über den Namen der Funktion tun, also:
that_sub(); #ohne Argument
that_sub($foo, $bar); # mit Argumenten

Wenn Dich der Rückgabewert der Funktion interessiert:
$self->{'WhatEver'} = that_sub(); #ohne Argument
$self->{'WhatEver'} = that_sub($foo, $bar); # mit Argumenten

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package test;
##########################
sub new {
##########################
my $class = shift;
my $self = {};

bless $self, $class;
return $self;
}

##########################
sub test {
##########################
my ($self) = shift;
my @arg = @_;

test2(@arg);
}

##########################
sub test2 {
##########################
my @messages = @_;
print "\n";
print "Alle Mitteilungen:\n";
print "$_\n" foreach @messages;
}
##########################
1; #Wichtig!!!
##########################


Der Aufruf aus dem Hauptprogramm würde wie folgt aussehen:

Code: (dl )
1
2
3
use Test;
my $obj = Test->new();
$obj->test('Hallo', 'World');

View full thread Perl - Sub Routinen Parameter.