www.farid-hajji.net banner

Farid Hajji

Perl: Einführung, Anwendungen, Referenz (2/e) [Support-Site]

Farid Hajji: Perl - Einführung, Anwendungen, Referenz
2., aktualisierte und erweiterte Auflage
Addison-Wesley Longman, ISBN 3-8273-1535-2

Beispielprogramm

ClassWithAnonHash.pm
# ClassWithAnonHash.pm -- Objektattribute in einem anonymen Hash.
#                   Generisches Beispiel.

package ClassWithAnonHash;

sub new {
    my $classname = shift;
    my $ptr       = {};        # Anonymer Attributhash
    bless($ptr, $classname);
    $ptr->_init(@_);           # Attribute speichern
    return $ptr;
}

sub _init {
    my $obj   = shift;         # Das zu initialisierende Objekt
    my %param = @_;            # AttrX => ValX, AttrY => ValY, ...

    %{ $obj } = %param;        # 1:1-Zuweisung von Hashes
}

sub getAttributeNames {
    my $obj   = shift;         # Das betroffene Objekt
    return keys %{ $obj };     # Die Namen seiner Attribute
}

sub getAttribute {
    my $obj   = shift;         # Aus welchem Objekt?
    my $attr  = shift;         # Welches Attribut?

    return $obj->{$attr};      # Okay, das stimmt.
}

sub setAttribute {
    my $obj    = shift;        # Welches Objekt?
    my $attr   = shift;        # Welches Attribut?
    my $newval = shift;        # Neuer Wert.

    $obj->{$attr} = $newval;   # Jawohl, neuer Wert.
}

1;
   

[Prev] [Up] [Relevant Chapter] [Next]

[Alte Quelle]


Last modified: $Date: 2006/05/18 12:55:50 $
FH. Search :: Sitemap :: Disclaimer :: Copyright :: Privacy
FreeBSD Logo