Beat: Object Getter/Setter und undef

Beitrag lesen

Falsch. $_[1] ist zwar bei $ob->midi() und $ob->midi(undef) undefiniert, aber @_ enthält im ersten Fall nur ein Element, im zweiten Fall zwei.

sub midi
{
    my $self=shift;
    if (@_) {
        my $value=shift;
        if (defined $value) {
            $self->{'midi'}=$value;
            return $value; # oder $self, oder den alten Wert, oder gar nichts
        } else {
            delete $self->{'midi'};
            return; # oder $self, oder den alten Wert (return value von delete)
        }
    } else {
        return $self->{'midi'};
    }
}

  
Danke, das ist die Lösung.  
Irgendwo im Hinterstüchen war, dass ich @\_ abfragen kann.  
Ich verfolge nur nicht konsequent jeden Gedankenstrang.  
  
mfg Beat

-- 

><o(((°>           ><o(((°>  

   <°)))o><                     ><o(((°>o  
Der Valigator leibt diese Fische