#include<iostream>
using namespace std;
class A
{
private:
int a;
public:
A():a(5){}
virtual void print()const
{
cout<<a;
}
};
class B:public A
{
private:
char b;
public:
B()
{
b='E';
}
void print()const
{
cout<<b;
}
};
void show(A &x)
{
x.print();
}
int main()
{
A d1,*p;
B d2;
p=&d2;
d1.print(); //5
d2.print(); //e
p->print(); //e
show(d1); //5
show(d2); //e
return 0;
}
运行结果:
本文通过一个 C++ 示例介绍了如何使用虚函数实现多态。示例中定义了基类 A 和派生类 B,并通过指针和引用调用虚函数 print() 来展示多态特性。
609

被折叠的 条评论
为什么被折叠?



