korea1 Geschrieben 21. Mai 2003 Geschrieben 21. Mai 2003 hi leute, ich fang grad an in c++ mit klassen zu programmieren, aber so ganz verstanden hab ich dass noch nicht, ich hoffe jmd von euch kann mir helfen. mein code: #include <iostream.h> #include <conio.h> class fahrzeug { private: int geschwindigkeit; int gang; public: fahrzueg(); //konstruktor ~fahrzeug(); //destruktor void geschwindigkeit_erhoehen (int); void schalten (int); }; void main (void) { cout << "test" << endl; getch(); } [/PHP] ich hab jetzt hier eine klasse fahrzeug erstellt. stimmt dass mit dem konstruktor und destruktor? und wie schaffe ich es jetzt in der main, ein objekt dieser klasse zu erstellen? meinetwegen einen golf, der die startgeschwindigkeit 50 hat und in gang 3 fährt. das müsste doch so aussehen: [CODE]fahrzeug golf(50,3);[/CODE] da bekomm ich dann aber eine fehlermeldung. und wie kann ich dann z.b. die geschwindigkeit erhöhen? wenn möglich bitte codebeispiele mit kommentaren. danke korea1 Zitieren
Diablo999 Geschrieben 21. Mai 2003 Geschrieben 21. Mai 2003 So in etwa: class fahrzeug { private: int geschwindigkeit; int gang; public: fahrzeug(); //konstruktor fahrzeug(int, int); //konstruktor mit werten für die initialisierung ~fahrzeug(); //destruktor void geschwindigkeit_erhoehen (int); void schalten (int); }; // Konstruktor mit Parametern fahrzeug::fahrzeug(int pgeschw, int pgang) { geschwindigkeit = pgeschw; // Geschwindigkeit übernehmen gang = pgang; // Gang übernehmen } // Konstruktor ohne Parametern fahrzeug::fahrzeug() { geschwindigkeit = 0; // 0 km/h gang = 0; // Leerlauf } // Geschwindigkeit erhöhen fahrzeug::void geschwindigkeit_erhoehen(int geschw) { geschwindigkeit += geschw; } void main (void) { // Fahrzeug mit dem Konstruktor ohne Parameter erstellen // --> Die Werte für gescheindigkeit und gang muss der Konstruktor füllen. fahrzeug* Golf = new fahrzeug(); // Fahrzeug mit einer bestimmten geschwindigkeit und einem bestimmten // gang initialisieren fahrzeug* Porsche = new fahrzeug(180, 2); // Hihi, 180 km/h im 2. Gang // Porsche beschleunigt weiter Porsche->geschwindigkeit_erhoehen(10); // soll 10 km/h schneller werden Porsche->schalten(3); // doch noch in den 3. Gang schalten } Gruß Diablo999 Zitieren
Diablo999 Geschrieben 21. Mai 2003 Geschrieben 21. Mai 2003 ups, muss natürlich so heisen: // Geschwindigkeit erhöhen void fahrzeug::geschwindigkeit_erhoehen(int geschw) { geschwindigkeit += geschw; } War wohl mal wieder etwas zu schnell Zitieren
korea1 Geschrieben 21. Mai 2003 Autor Geschrieben 21. Mai 2003 hi, danke, dass war schon sehr hilfreich und wie kann ich jetzt kontrollieren, ob das geklappt hat, bzw wie bekomme ich ne ausgabe hin? muss ich dafür ne neue methode in der klasse anlegen? korea1 Zitieren
Diablo999 Geschrieben 21. Mai 2003 Geschrieben 21. Mai 2003 Ja, ne neue Methode z.B. GetGeschwindigkeit int fahrzeug::GetGeschwindigkeit() { return geschwindigkeit; } void main() { ..... cout << "Der Golf fährt " << Golf->GetGeschwindigkeit() << " km/h"; } 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.