Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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

Geschrieben

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

Geschrieben

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

Geschrieben

Ja, ne neue Methode

z.B. GetGeschwindigkeit


  int fahrzeug::GetGeschwindigkeit()

  {

     return geschwindigkeit;

  }


  void main()

  {

    .....    

    cout << "Der Golf fährt " << Golf->GetGeschwindigkeit() << " km/h";

  }

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...