überladene Funktionen unterscheiden durch rückgabetyp
-
Servus
kann man in einer Klasse eine überladene Funktion anhand des Rückgabetyps unterscheiden
res_IGBT CEsw::Interpolate(double Uzk, double Temperatur, double INenn) { res_IGBT res; Energie Esw = InterpSchaltenergie(sDataFile.sIGBT.SVT_IGBT,Temperatur,Uzk,INenn); res.Eon = Esw.Eon; res.Eoff = Esw.Eoff res.ESum = Esw.ESum; return res; }; res_DIODE CEsw::Interpolate(double Uzk, double Temperatur, double INenn) { res_DIODE res; Energie Esw = InterpSchaltenergie(sDataFile.sIGBT.SVT_IGBT,Temperatur,Uzk,INenn); res.Eoff = Esw.Diode_Eoff; return res; };D:\test\TResult.h(69) : error C2556: 'struct CEsw::res_DIODE __thiscall CEsw::Interpolate(double,double,double)' : Überladene Funktion unterscheidet sich nur hinsichtlich des Rückgabetyps von 'struct CEsw::res_IGBT __thiscall CEsw::Inte
kommt als Fehler...
-
Nein, das ist nicht möglich.
MfG SideWinder
-
Du kannst statt einer Rückgabe auch eine entsprechende Referenz übergeben, dann ist die Überladung auch kein Problem.
-
Man könnte auch Templates verwenden um den Rückgabetyp anzugeben. Allerdings muß man da den Typ beim Aufruf natürlich mit angeben.
Referenzen wären hier schon das Beste.