std::ostream& operator<<(std::ostream &strm);
Class.cpp
std::ostream& operator<<(std::ostream &strm, Classname &a) {
return strm << a.getAge();
}
main()
Classname one(5) //this sets the age to 5;
std::cout << one;
Also das ist der Code, den ich habe. Ich habe diesen Fehler gegoogelt und die Lösung war immer, den std :: ostream & Operator < < zu implementieren, aber ich habe das getan und es funktioniert nicht.
Ich verstehe auch nicht, warum ich nicht haben kann (Classname) innerhalb der Classname.h Implementierung (es gibt mir eine Fehlermeldung, dass es nur ein Argument geben kann), noch auf Classname.cpp müssen zwei sein Ansonsten gibt es einen Fehler.
Sie haben nicht genug Code hier, um herauszufinden, was das Problem ist. Du brauchst ein [mcve]. Wir könnten raten, was passiert, aber das ist nur Vermutung – Justin
Schauen Sie sich Ihre ersten zwei Codeblöcke an. Haben die Funktionen die gleiche Signatur? – NathanOliver
@Justin Eine MVCE wäre besser, aber ich denke, wir haben genug, um in diesem Fall zu antworten. Sieh Nathans Kommentar. – Borgleader