#include<iostream>
using namespace std;
class Alpha
{
int a;
public:
void get_a(int x)
{
a = x;
}
int hello()
{
return a;
}
};
class Beta : public Alpha
{
int b, c;
public:
void get_b(int y)
{
b = y;
}
void add()
{
c = hello() + b;
cout << c << endl; // displays garbage value
}
};
int main()
{
Alpha v1;
Beta v2;
v1.get_a(4);
v2.get_b(3);
v2.add();
v2.disp();
return 0;
}
Der Ausgang des v2.disp() zeigt Müll Wert, aber wenn ich "a" als v2.get_a statt v1.get_a initalise, zeigt es die richtige Antwort. Neu in C++ übrigens. Bitte helfen Sie. Vielen Dank.C++, Einzel Vererbung, Garbage Wert
Was ist 'disp'? Ich sehe es nicht in deinem Code. –
Auch deine Benennung ist ein bisschen komisch. Sie haben Funktionen namens 'get', die eigentlich nichts" bekommen ", sondern stattdessen * set * -Werte. –
Es tut mir leid, disp war eigentlich eine Funktion, die den Wert der Variablen c drucken sollte. Vergessen, es hinzuzufügen, seit ich den Code bearbeitet habe. Aber warum Müll-Wert angezeigt wird, wenn ich die Variable bereits initialisiert habe a. Noch einmal vielen Dank. – user7166135