Thread Unerwartetes Verhalten bei Operator überladen (10 answers)
Opened by Muffi at 2012-08-21 17:05

Muffi
 2012-08-21 17:05
#161176 #161176
User since
2012-07-18
1465 Artikel
BenutzerIn
[default_avatar]
Also nicht, dass es so sonderlich wichtig wäre, aber irgendwie bin ich an der Stelle mit meiner Weisheit am Ende.
Und zwar bastel ich immer wenn wieder mal Zeit ist an meinem ORM weiter.

Momentan siehts so z.B. aus:
Code (perl): (dl )
$wartung->datum


datum ist eine generierte LVALUE sub, die ein auf Class::Date-Objekt zurücklässt, was widerum überladene Operatoren hat.

Was alles geht:
Code (perl): (dl )
1
2
3
$wartung->datum = $wartung->datum + '1D'
$wartung->datum = date(time)
$wartung->datum->add('1D')


[EDIT]
Sogar
Code (perl): (dl )
$wartung->datum--

zieht eine Sekunde ab... ich werd noch kirre.

Was nicht geht:
Code (perl): (dl )
$wartung->datum += '1D'

es kommt die Meldung: Argument "2015-09-30 00:00:00" isn't numeric in addition (+) at ...

Es scheint als würd Perl das Objekt vorher stringifizieren, aber warum?
Last edited: 2012-08-22 09:33:55 +0200 (CEST)
1 + 1 = 10

View full thread Unerwartetes Verhalten bei Operator überladen