问题:
类A继承类B,父类B的指针如何调用子类A中的变量和函数?
解决方案:
在父类B类中定义虚函数
- 父类中有自己的实现,子类重新实现
virtual void Show()
{
cout << "A::Show()" << endl;
}
2. 父类没有实现,子类自己实现
virtual void test(int num) = 0;
完成代码参考如下
#include<iostream>
using namespace std;
class A
{
public:
virtual void Show()
{
cout << "A::Show()" << endl;
}
virtual void test(int num) = 0;
};
class B : public A
{
public:
void Show()
{
cout << "B::Show" << endl;
}
void test(int num){
cout << num << endl;
}
};
int main()
{
A *pa = NULL;
B b;
pa = &b;
pa->Show();
pa->test(3333);
return 0;
}
运行结果
参考
解析C++隐藏与覆盖_Oragen的博客
作者:软件工程小施同学
公众哈:微程序学堂
本文摘自 :https://blog.51cto.com/s