Überladen von <<



  • Irgendwo in meiner Klasse coutobj steht:

    std::string operator<< (coutobj, float &d);
    

    An der Stelle liefert der compiler den Fehler:

    error C2804: Binärer Operator '<<' hat zu viele Parameter
    

    Warum das? (Wie soll eine Schiebeoperation mit nur einem Parameter aussehen? 😃 )



  • das ist innerhalb einer klasse, dann ist die klasse direkt der ERSTE parameter, definierst du den operator<< ausserhalb, dann sollte das so richtig sein.

    dh: innerhalbe einer klasse hat op<< nur eine parameter und ausserhalb 2

    das gilt übrigens für alle operatoren mit 2 parametern


Anmelden zum Antworten