invalid conversion
-
kurz und knapp!
es geht um klassenprogrammierung:da bringt er ihr beim compilieren den fehler "invalid conversion from `const char*' to `char' "!.
Ich hab aber nun alles durchgeschaut und weiß nicht weiter...:-(Hab mal den Quelltext angehangen und die betreffende Zeile markiert:
Vielleicht kann mir jemand helfen!Danke im Vorraus
Quelltext:
#include <iostream> using namespace std; class Bestand { public: long Nr; char *Gst; double Wert; }; class Kran { public: char *Typ; char *Fa; char Leas; double NKost; Kran (char *typ = "AK-30", char *fa = "Allkran", char leas = "ja", double nKost = 50.7) { Typ = typ; Fa = fa; Leas = leas; NKost = nKost; } ~Kran(){} }; class Verkauf : public Bestand, Kran { public: Verkauf (long nr = 1015, char *gst = "Autokran", double wert = 132000, char *typ = "AKX-35", char *fa = "Werner") :( { Nr = nr; Gst = gst; Wert = wert; Typ = typ; Fa = fa; } :( ~Verkauf(){} double V_Preis(); }; double Verkauf::V_Preis() { double VP; VP = (Wert + (Wert * NKost)/100)*0,16; return VP; }; class Sonderpreis : public Verkauf { protected: double Sond; public: double SPr(); Sonderpreis (double sond = 12) { Sond = sond; } ~Sonderpreis(){} }; double Sonderpreis::SPr() { double Preis; Preis = Verkauf::V_Preis(); Preis = (1-(Sond/100))*Preis; return Preis; };<edit>Bitte Code-Tags verwenden</edit>
-
Die nächste Steigerung wäre es gewesen, das ganze schön in cpp-Tags einzuschließen

Dann würde dir vermutlich auch auffallen, daß du im Kran()-Konstruktor den Member 'char Leas' mit einem char* initialisieren willst.PS: Du solltest vielleicht die Konstruktoren der Basisklasse(n) als Initialisierungsliste anführen.
PPS: Und steig um von char* auf std::string.
-
Bitte benutze cpp-Tags. So finde ich nichtmal die von Dir angesprochene Markierung des Fehlers.
Doch, habs gefunden. Der Ausdruck "blabla" im Quelltext (also ein Text in Anführungszeichen) ist ein unveränderlicher Text (Typ const char*). Diesen versuchst Du einem char* zuzuweisen (Typ Zeiger auf veränderlichen Text).
Was hast'n da für'n Compiler, der auf sowas achtet?

EDIT: Hab mich wohl zu sehr auf die markierte Stelle fixiert, war in dem Zusammenhang quatsch

stuff schrieb:
Danke im v******
Schreib's bitte richtig oder garnicht.