voldemort Geschrieben 12. Dezember 2010 Geschrieben 12. Dezember 2010 hallo zusammen. wir nehmen grad das thema klassenaufbau durch. in meiner klasse habe ich für ein auto den hersteller und den typ deklarariert den der benutzer per main eingeben soll. das problem welches ich nun aber habe weiß ich nicht zu lösen,so blöd wie es sich auch anhört. erstmal der code class Auto { private: char Hersteller[20]; char Typ[20]; public: void setHersteller (char *hersteller); void setTyp (char *typ); char *getHersteller (); char *getTyp (); }; void Auto::setHersteller (char *hersteller) { strcpy_s(Hersteller,hersteller); } void setTyp (char *typ) { strcpy_s(Typ,typ); } char* Auto::getHersteller () { return Hersteller; } char *Auto::getTyp () { return Typ; } int _tmain(int argc, _TCHAR* argv[]) { Auto Modell; char hersteller[20], typ [20]; cout<<"Hersteller eingeben"<<endl; cin>>hersteller; Modell.setHersteller(hersteller); cout<<"Typ eingeben"<<endl; cin>>typ; Modell.setTyp(typ); cout<<endl; cout<<"Hersteller: "<<Modell.getHersteller()<<endl; cout<<"Typ: "<<Modell.getTyp()<<endl; return 0; } in meiner methode 'void setTyp (char *typ)'sagt der compiler das 'Typ' ein nichtdeklarierter bezeichner ist. sieht hier jemand nen fehler den ich übersehe? ich sehe kein unterschied zur deklaration vom hersteller. grüße voldemort Zitieren
Klotzkopp Geschrieben 12. Dezember 2010 Geschrieben 12. Dezember 2010 in meiner methode 'void setTyp (char *typ)'sagt der compiler das 'Typ' ein nichtdeklarierter bezeichner ist.Und damit hat er recht. Du hast da eine bisher nicht deklarierte freie Funktion definiert, die nichts mit deiner Klasse zu tun hat. Sonst würde sie ja Auto::setTyp heißen Ich rate dir übrigens dringend, an Stelle von char-Arrays std::string zu benutzen. Macht vieles einfacher. Zitieren
voldemort Geschrieben 13. Dezember 2010 Autor Geschrieben 13. Dezember 2010 na brat mir einer nen storch und die beine recht knusprig danke für die hilfe. werd mir das mit dem std::string mal anschauen. grüße Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.