Thread Nicht benötigte Argumente trotzem in eine Variable kopieren? (29 answers)
Opened by Kuerbis at 2018-02-22 08:19

clms
 2018-03-01 14:33
#188068 #188068
User since
2010-08-29
373 Artikel
BenutzerIn
[default_avatar]
2018-02-27T19:04:49 hlubenow
2018-02-27T12:47:54 Muffi
Code (perl): (dl )
my $name = $user->first_name.' '.$user->last_name;

Was [ist] daran nicht klar ... ?

Also, das sieht ja nun so aus, als würdest Du auf die Attribute zugreifen, d.h. wie "$user->{first_name}".

Ja und? Du willst und machst (indirekt) genau das: lesend auf ein Attribut des Objekts zugreifen. Selbst wenn das Attribut als solches im Objekt nicht existiert und erst "on-the-fly" berechnet wird, ist das wegen der Objekt_Enkasulierung egal.

Der einzige Unterschied zu einem "richtigen" Attribut ist, das Du das Konstrukt nicht als left-hand-side verwenden kannst. Aber das wird hier ja auch nicht gemacht.

Ist natürlich Geschmackssache, aber ich mag diese Schreibweise recht gerne, insbesondere wenn ich auf Unterobjekte zugreife (z.B. Auto->Motor->Anlasser oder Server->ftp->put(file)).
Das letzte Beispiel zeigt dann auch, dass ich dort, wo tatsächlich eine Aktion gemeint ist, ein Verb als Funktionsnamen verwende und die Klammern setze.

Am Beispiel nicht zuerkennen ist dagegen die Funktionalität hinter ftp(). Oft generiere ich das FTP-Objekt erst beim ersten Aufruf von ftp() und öffne dann auch noch die Verbindung automatisch.

View full thread Nicht benötigte Argumente trotzem in eine Variable kopieren?