#include<iostream>
using namespace std;
class A
{
protected:
int m_nValue;
public:
A(int nValue):m_nValue(nValue)
{
cout << m_nValue << endl;
}
};
class B: public A
{
public:
B(int nValue): A(m_nValue)
{
cout << m_nValue << endl;
}
int getValue()
{
return m_nValue;
}
};
int main()
{
B b(4);
cout << b.getValue() << endl;
return 0;
}
ここで、上記のプログラムでは、派生クラスでm_nValue
を再度宣言していません。出力では、値 "4"を表示するのではなく、ジャンク値のみが表示されています。 これを説明してください。派生クラスは基本クラスと同じメンバ変数名を持っています
は、オハイオ州のがらくたをお勧めします!どのように私はこれを見ることができないかもしれない!とにかくたくさんありがとうございました – rad123