O'Reilly logo

Programmieren mit Perl by Jon Orwant, Tom Christiansen, Larry Wall

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Eine subtile untie-Falle

Wenn Sie die von tie oder tied zurückgelieferten Objekte nutzen wollen und wenn die Klasse einen Destruktor definiert, dann gibt es eine subtile Falle, vor der Sie sich hüten müssen. Betrachten Sie das nachfolgende (zugegebenermaßen gekünstelte) Beispiel einer Klasse, die eine Datei nutzt, um alle Werte festzuhalten, die einem Skalar zugewiesen wurden:[137]

package Remember; sub TIESCALAR { my $class = shift; my $filename = shift; open(my $handle, ">", $filename) or die "Kann $filename nicht öffnen: $!\n"; print $handle "Der Anfang\n"; bless {FH => $handle, VALUE => 0}, $class; } sub FETCH { my $self = shift; return $self->{VALUE}; } sub STORE { my $self = shift; my $value = shift; my $handle = $self->{FH}; print $handle ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required