operator frage



  • Hi,

    wenn man einen operator + hat, sollte man dann auch einen operator += definieren?



  • Mein operator+ sieht immer so aus:

    T operator+(T a, T const& b)
    {
      a+=b;
      return a;
    }
    

    deshalb empfiehlt es sich den operator+= anzubieten, denn dadurch spart man sich den operator+ zu schreiben ­čśë



  • Au├čerdem geht auf die Art und Weise sicher, da├č + und += wir erwartet die gleiche Operation durchf├╝hren und bei Modifikationen mu├č auch nur eine Stelle ver├Ąndert werden.

    Allerdings mache ich meinen R├╝ckgabewert immer const um Zuweisungen an tempor├Ąre Objekte zu verhindern. Und auf die Tricks wie einen Parameter by Value und den andere by Reference verzichte ich und lege die Variable selbst an. Ist zwar eine Zeile mehr, aber man mu├č sich nicht wundern, warum die beiden Parameter verschieden ├╝bergeben werden.

    MfG Jester



  • Jester schrieb:

    Allerdings mache ich meinen R├╝ckgabewert immer const um Zuweisungen an tempor├Ąre Objekte zu verhindern.

    *patsch*
    Ich nat├╝rlich auch. Habs nur vergessen ­čś×


Log in to reply