c++frage(bessere Schreibform)



  • Hallo,
    ich will eine Klasse mit dem = operator überladen.
    Welche Schreibform ist die bessere?

    class foo 
    {
    ...
    const foo& operator = (const foo &next){...}//erste Variante  
    ...
    foo& operator = (const foo &next){...}//zweite V.
    

    Also die Frage ist,mit const oder ohne?...Beides funktioniert.
    Kann man dass erste const vor der Referenceklasse foo weglassen?



  • Wenn du sowas machen willst

    foo a,b,c;
    a = b = c = irgendeinwert;
    

    darfst du keine konstante Referenz zurückliefern.

    cico2006 schrieb:

    Welche Schreibform ist die bessere?

    IMHO die ohne const, damit du im oben genannten Fall das gleiche Verhalten wie für primitive Typen hast.



  • -predator- schrieb:

    Wenn du sowas machen willst

    foo a,b,c;
    a = b = c = irgendeinwert;
    

    darfst du keine konstante Referenz zurückliefern.

    cico2006 schrieb:

    Welche Schreibform ist die bessere?

    IMHO die ohne const, damit du im oben genannten Fall das gleiche Verhalten wie für primitive Typen hast.

    Danke für die schnelle Antwort!...


Anmelden zum Antworten