Problem mit Vererbung

Gast #1834351
Lesenswert?
• ▲
▼
Liebe C++ Könner!

Ich habe da ein Problem.

Ich habe ein kleines Programm geschrieben, welches die Fläche eines 
T-Trägers ausrechnen soll. Allerdings gibt es Probleme bei der 
Vererbung.

Ich habe in der letzten Zeile meines Codes keinen Zugriff auf eine 
Mehtode in meiner Abgeleiteten Klasse.

Könnt ihr mir vielleicht helfen?

Was mache ich falsch?
1
#include <stdio.h>
2

3
class DTT_GEO
4
{
5
  //protected:
6
  public:
7
      int b;
8
      int h;
9
      int d;
10
      int laenge;
11
      int q_flaeche;
12

13
    
14
      void eingabe_breite(void);
15
      void eingabe_hoehe(void);
16
      void eingabe_dicke(void);
17
      void eingabe_laenge(void);
18

19
      void ausgabe_breite(void);
20
      void ausgabe_hoehe(void);
21
      void ausgabe_dicke(void);
22
      void ausgabe_laenge(void);
23
      void ausgabe_querschnittsflaeche(void);
24
      void ausgabe_volumen(void);
25
};
26

27

28
class DTT_MAT:public DTT_GEO
29
{
30
  private:
31
      int artgewicht;
32
      int gewicht;
33

34
  public:
35
      void eingabe_gewicht(void);
36
      void eingabe_artgewicht(void);
37
      
38
      void ausgabe_gewicht(void);
39
      void ausgabe_artgewicht(void);
40
  
41

42
};
43

44
void DTT_GEO::eingabe_breite(void) {scanf("%d",&b);}
45
void DTT_GEO::eingabe_hoehe(void) {scanf("%d",&h);}
46
void DTT_GEO::eingabe_dicke(void) {scanf("%d",&d);}
47
void DTT_GEO::eingabe_laenge(void) {scanf("%d",&laenge);}
48
void DTT_MAT::eingabe_artgewicht(void) {scanf("%d",&artgewicht);}
49
void DTT_MAT::eingabe_gewicht(void) {scanf("%d",&gewicht);}
50

51
void DTT_GEO::ausgabe_breite(void) {printf("%d",b);}
52
void DTT_GEO::ausgabe_hoehe(void) {printf("%d",h);}
53
void DTT_GEO::ausgabe_dicke(void) {printf("%d",d);}
54
void DTT_GEO::ausgabe_laenge(void) {printf("%d",laenge);}
55
void DTT_MAT::ausgabe_artgewicht(void) {printf("%d",artgewicht);}
56
void DTT_MAT::ausgabe_gewicht(void) {printf("%d",gewicht);}
57

58
int main (void)
59
{
60
    DTT_GEO Werte;
61

62
    printf("Geben Sie bitte die Daten fuer einen Doppel-T-Traeger an:\n");
63
    printf("Fußbreite:\t\t");
64
    Werte.eingabe_breite();
65
    printf("\nHoehe:\t\t");
66
    Werte.eingabe_hoehe();
67
    printf("\nMaterialdicke:\t\t");
68
    Werte.eingabe_dicke();
69
    printf("\nLaenge:\t\t");
70
    Werte.eingabe_laenge();
71
    printf("\nArtgewicht:\t\t");
72
    Werte.eingabe_artgewicht();
73

74
    printf("\n\nDer Doppel-T-Traeger hat folgende geometrische Daten\n");
75
    printf("---------------------------------------------------------------\n");
76
    printf("\nBreite des Fußes\t\t:\t\t"); Werte.ausgabe_breite();
77
    printf("\nTraeger Hoehe\t\t:\t\t");Werte.ausgabe_hoehe();
78
    printf("\nMaterialdicke\t\t:\t\t");Werte.eingabe_dicke();
79
    printf("\nLaenge\t\t:\t\t");Werte.ausgabe_laenge();
80
    printf("\nQuerschnittsflaeche\t\t:\t\t");Werte.ausgabe_querschnittsflaeche();
81
    printf("\nVolumen\t\t:\t\t");Werte.ausgabe_volumen();
82
    printf("\n---------------------------------------------------------------\n");
83
    printf("Der Doppel-T-Traeger hat folgende Gewichts-Daten:\n");
84
    printf("\n---------------------------------------------------------------\n");
85
    printf("Artgewicht\t:\t"); Werte.ausgabe_artgewicht();                //Warum kein Zugriff auf abgeleitete Klasse?
86

87
    
88
    
89
    
90
   
91
}




Danke!

Gruß
Stefan

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren