Fehler C2678 Binärer Operator "==": Es konnte kein Operator gefunden werden, der einen linksseitigen Operanden vom Typ "overloaded-function" akzeptiert [...]?
__________________________________________________________________________________
Language.cpp: https://pastebin.com/Eptpi9A2
Language.h: https://pastebin.com/EjUq3JH1
Text.cpp: https://pastebin.com/W4ZFDam2
Text.h: https://pastebin.com/SJQ3LxiX
__________________________________________________________________________________
Guten Abend, liebe Community.
Leider bin ich völlig unschlüssig, was mir diese Meldungen sagen sollen. Gehe ich falsch mit den Vektoren um?
Fehler C2678 Binärer Operator "==": Es konnte kein Operator gefunden werden, der einen linksseitigen Operanden vom Typ "overloaded-function" akzeptiert (oder keine geeignete Konvertierung möglich) RPG++ .\Language.cpp - 25
Fehler C3867 "Text::getText": Keine Standardsyntax; "&" zum Erstellen eines Verweises auf das Member verwenden RPG++ .\Language.cpp - Zeile 34
Die Fehlermeldungen verteilen sich über die ganze Implementierung von "Language".
__________________________________________________________________________________
Vielen Dank im Voraus!
2 Antworten
Ein Methodenaufruf braucht immer runde Klammern nach dem Namen. Ansonsten interpretiert der Compiler das als Versuch, einen Zeiger auf die Methode selbst (und nicht ihren Rückgabewert nach Aufruf) im Ausdruck weiterzuverarbeiten.
Habe mir nur kurz angesehen.
Ist getName ein Methodenname oder eine Membervariable?
Versuche mal Klammern '()' dahinter.
Bei getText bitte auch in getText() ändern.
Du willst nicht die Adresse des Programms von getText mit einem String vergleichen (geht auch nicht) sondern den Funktionswert der Methode getText, was ja auch ein String ist.
Oh je, was ein banaler Fehler. Vielen Dank jedenfalls. 😅