Thread Bitte um Hilfe bei bless Fehler
(39 answers)
Opened by bianca at 2019-09-28 17:06
Im Grunde reden wir ja über dieselbe Sache.
Damit bianca das auch nachvollziehen kann, hab' ich zu Deinen Methodenaufrufen mal die Klasse dazugeschrieben, so daß es ein lauffähiges Skript ergibt: Code (perl): (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 32 33 34 35 36 37 38 39 40 41 42 43 44 #!/usr/bin/perl use warnings; use strict; package Person { sub new { my $classname = shift; my $args = {@_}; my $self = { name => $args->{vname} || "", name => $args->{name} || "", ort => $args->{ort} || "", plz => $args->{plz} || "00000", age => $args->{age} || 0 }; return bless($self, $classname); } sub setLocation { my $self = shift; my %args = @_; $self->{plz} = $args{plz}; $self->{location} = $args{location}; } sub setAge { my $self = shift; my $age = shift; $self->{age} = $age; } sub getAge { my $self = shift; return $self->{age}; } } my $person = Person->new( name => 'foo', vname => 'bar'); # Nun kann die Person an einen anderen Ort umziehen und nimmt dazu einen sog. setter: $person->setLocation( ort => 'Woanders', plz => '12345' ); # Und wer wissen will wie alt er ist, nimmmt einen getter: $person->setAge(25); my $age = $person->getAge(); print "$age\n"; rosti Eben. Und das Beste daran ist, daß man das gesamte Objekt auch Funktionen übergeben kann. Dann steht dort das gesamte Objekt zur Verfügung, ohne daß man sich groß über Dereferenzierungen Gedanken machen müßte. Last edited: 2019-09-30 15:26:33 +0200 (CEST) |