问题:当子类与父类出现同名的成员,如何通过子类对象,访问到子类或父类中同名的数据呢?
- 访问子类同名成员 直接访问即可
- 访问父类同名成员 需要加作用域
当子类与父类拥有同名的成员函数,子类会隐藏父类中所有版本的同名成员函数 |
#include<iostream>
#include<string>
using namespace std;
//继承同名成员处理方式
class Base
{
public:
Base()
{
m_A = 100;
}
int m_A;
void func();
void Add(int a, int b);
};
void Base::func()
{
cout << "Base输出" << endl;
}
void Base::Add(int a, int b)
{
cout << "Base:" << a + b << endl;
}
class Son :public Base
{
public:
Son()
{
m_A = 200;
}
int m_A;
void func();
void Add(int a, int b);
};
void Son::Add(int a, int b)
{
cout << "Son:" << a + b << endl;
}