Hi, mein Problem ist volgendes. Wenn ich mein Prog compilieren möchte erhalte ich folgende Fehlermeldung: "Prog8_1.cpp": E2316 'GesammtGewicht' ist kein Element von 'Laster' in Funktion main() in Zeile 35 . Wenn ich das richtig deute will mir der Compiler damit sagen, dass 'GesammtGewicht' kein Element der Klasse 'Laster' ist. Nur kann ich keinen Fehler in meinem Code finden, der diesen Fehler verursachen könnte.
Der Code der mit 'GesammtGewicht zu tun hat habe ich blau hinterlegt
Könnte es an meinem Kompeiler liegen? Ich benutze den C++BuilderX von Borland
Für jede Hife bedanke ich mich jetzt schon mal im voraus.
// Kapitel 7 - Programm 8 - ALLEVEH.CPP
#include <iostream.h>
#include "vehikel.h"
#include "auto.h"
#include "laster.h"
int main()
{
Vehikel Hochrad, Fahrrad;
Hochrad.Initialisiere( 1, 5.7 );
Fahrrad.Initialisiere( 2, 2.3 );
cout << "Das Hochrad hat " << Hochrad.HoleRaeder() << " Rad.\n";
cout << "Das Fahrrad hat " << Fahrrad.HoleRaeder() << " Räder.\n";
cout << "Die Radlast des Hochrades betraegt " << Hochrad.Radlast() << " kg auf dem einzigen Rad.\n";
cout << "Die Radlast des Fahrrades betraegt " << Fahrrad.Radlast() << " kg auf dem einzigen Rad.\n";
cout << "Das Hochrad wiegt " << Hochrad.HoleGewicht() << " kg.\n";
cout << "Das Fahrrad wiegt " << Fahrrad.HoleGewicht() << "kg.\n\n";
Auto Sedan;
Sedan.Initialisiere( 4, 1600.0, 5 );
cout << "Der Sedan fuehrt " << Sedan.Passagiere() << " Passagiere mit sich.\n";
cout << "Der Sedan wiegt " << Sedan.HoleGewicht() << " kg.\n";
cout << "Die Radlast des Sedan ist " << Sedan.Radlast() << " kg pro Rad.\n\n";
Laster Sattelschlepper, Tieflader;
Sattelschlepper.Initialisiere( 18, 5700.0 );
Sattelschlepper.InitLaster( 1, 15300.0 );
Tieflader.Initialisiere( 18, 15700.0 );
Tieflader.InitLaster( 1, 115300.0 );
cout << "Der Sattelschlepper wiegt " << Sattelschlepper.HoleGewicht() << " kg.\n";
cout << "Die Effizienz des Sattelschleppers ist " << 100.0 * Sattelschlepper.Effizienz() << " Prozent.\n";
cout << "Das Gesammtgewicht des Tieflader ist " << Sattelschlepper.GesammtGewicht() << " kg.\n";
cout << "Der Tieflader wiegt " << Tieflader.HoleGewicht() << " kg.\n";
return 0;
}
--------------------------------------------------------------
// Kapitel 7 - Programm 7 - LASTER.CPP
#include "laster.h"
void Laster::InitLaster(int WieViele, float MaxLadung)
{
Passagieranzahl = WieViele;
Ladung = MaxLadung;
}
float Laster::Effizienz(void)
{
return Ladung /(Ladung + Gewicht);
}
float Laster::GesammtGewicht(void)
{
return (Ladung + Gewicht);
}
int Laster:assagiere(void)
{
return Passagieranzahl;
}
-----------------------------------------------------------
// Kapitel 7 - Programm 6 - LASTER.H
#ifndef LASTER_H
#define LASTER_H
#include "vehikel.h"
class Laster : public Vehikel
{
int Passagieranzahl;
float Ladung;
public:
void InitLaster(int WieViele = 2, float MaxLadung = 10000.0);
float Effizienz(void);
int Passagiere(void);
float GesammtGewicht(void);
};
#endif
Der Code der mit 'GesammtGewicht zu tun hat habe ich blau hinterlegt
Könnte es an meinem Kompeiler liegen? Ich benutze den C++BuilderX von Borland
Für jede Hife bedanke ich mich jetzt schon mal im voraus.
// Kapitel 7 - Programm 8 - ALLEVEH.CPP
#include <iostream.h>
#include "vehikel.h"
#include "auto.h"
#include "laster.h"
int main()
{
Vehikel Hochrad, Fahrrad;
Hochrad.Initialisiere( 1, 5.7 );
Fahrrad.Initialisiere( 2, 2.3 );
cout << "Das Hochrad hat " << Hochrad.HoleRaeder() << " Rad.\n";
cout << "Das Fahrrad hat " << Fahrrad.HoleRaeder() << " Räder.\n";
cout << "Die Radlast des Hochrades betraegt " << Hochrad.Radlast() << " kg auf dem einzigen Rad.\n";
cout << "Die Radlast des Fahrrades betraegt " << Fahrrad.Radlast() << " kg auf dem einzigen Rad.\n";
cout << "Das Hochrad wiegt " << Hochrad.HoleGewicht() << " kg.\n";
cout << "Das Fahrrad wiegt " << Fahrrad.HoleGewicht() << "kg.\n\n";
Auto Sedan;
Sedan.Initialisiere( 4, 1600.0, 5 );
cout << "Der Sedan fuehrt " << Sedan.Passagiere() << " Passagiere mit sich.\n";
cout << "Der Sedan wiegt " << Sedan.HoleGewicht() << " kg.\n";
cout << "Die Radlast des Sedan ist " << Sedan.Radlast() << " kg pro Rad.\n\n";
Laster Sattelschlepper, Tieflader;
Sattelschlepper.Initialisiere( 18, 5700.0 );
Sattelschlepper.InitLaster( 1, 15300.0 );
Tieflader.Initialisiere( 18, 15700.0 );
Tieflader.InitLaster( 1, 115300.0 );
cout << "Der Sattelschlepper wiegt " << Sattelschlepper.HoleGewicht() << " kg.\n";
cout << "Die Effizienz des Sattelschleppers ist " << 100.0 * Sattelschlepper.Effizienz() << " Prozent.\n";
cout << "Das Gesammtgewicht des Tieflader ist " << Sattelschlepper.GesammtGewicht() << " kg.\n";
cout << "Der Tieflader wiegt " << Tieflader.HoleGewicht() << " kg.\n";
return 0;
}
--------------------------------------------------------------
// Kapitel 7 - Programm 7 - LASTER.CPP
#include "laster.h"
void Laster::InitLaster(int WieViele, float MaxLadung)
{
Passagieranzahl = WieViele;
Ladung = MaxLadung;
}
float Laster::Effizienz(void)
{
return Ladung /(Ladung + Gewicht);
}
float Laster::GesammtGewicht(void)
{
return (Ladung + Gewicht);
}
int Laster:assagiere(void)
{
return Passagieranzahl;
}
-----------------------------------------------------------
// Kapitel 7 - Programm 6 - LASTER.H
#ifndef LASTER_H
#define LASTER_H
#include "vehikel.h"
class Laster : public Vehikel
{
int Passagieranzahl;
float Ladung;
public:
void InitLaster(int WieViele = 2, float MaxLadung = 10000.0);
float Effizienz(void);
int Passagiere(void);
float GesammtGewicht(void);
};
#endif