operator ueberladen
-
Und wieder einmal wende ich mich in einer duesteren Stunde an euch um mir auf die Sprünge zu helfen....
Also ich möchte einen unären Operator überladen:
#define MWST 1.16 class systeme{ ... float systeme::operator - (float a){ //MWST Operatorueberladung double out; out=a*MWST; return out;} ...und zwar soll er wenn ich eine double zahl a nehme und b= -a; schreibe er 16% dazupacken.
Aber es klappt nicht wenn ich in einer Memberfunktion b=-a; schreibe gibt der mir für b nur das negative für a aus.
-
Du kannst Operatoren nur überladen, wenn daran mindestens ein eigener Datentyp (class, struct, union) beteiligt ist - der unäre operator-(float) hat bereits eine feste Bedeutung und kann nicht geändert werden.
(btw, was du da hast, dürfte der binäre operator-(systeme,float) sein)