Überladungsmethoden basierend auf dem Rückgabetyp
Durch Überladung können mehrere Funktionen denselben Namen verwenden, müssen jedoch unterschiedliche Signaturen haben. Wie aus der Fehlermeldung hervorgeht, ist es in C jedoch nicht möglich, Methoden allein aufgrund ihrer Rückgabetypen zu überladen. Die Überlastungsauflösung berücksichtigt die Funktionssignatur, die den Funktionsnamen, CV-Qualifizierer und Parametertypen umfasst.
Um dieses Problem zu beheben, gibt es mehrere Optionen:
Im konkreten Fall, in dem My über zwei get()-Methoden mit unterschiedlichen Rückgabetypen verfügt, gilt Folgendes Code demonstriert die Optionen:
Option 1: Methoden umbenennen
class My { public: int getInt(int); char getChar(int); };
Option 2: Verwenden Sie einen Out-Parameter
class My { public: void get(int, int&); void get(int, char&); };
Das obige ist der detaillierte Inhalt vonKönnen C-Methoden allein aufgrund des Rückgabetyps überladen werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!