- 7
- 0
- 约1.28万字
- 约 15页
- 2019-06-30 发布于安徽
- 举报
. . .
..........
26. 虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非函数不支持多态调用。有如下程序:
#includeiostream
using namespace std;
class Base
{
public:
virtual void f(){coutf0+;}
void g() { coutg0+;}
};
class Derived:public Base
{
public:
void f(){cout f+;}
void g(){coutg+;}
};
int main()
{
Derived d;
Base *p=d;
p-f(); p-g();
return 0;
}
运行时输出的结果是______。
A、f+g+B、f0+g+C、f+g0+D、f0+g0+
本题考查的是多态与虚拟函数。
Derived::f()在基类中被定义为虚拟函数,故在执行p-f()时,将根据该指针所指对象的实际类型调用成员函数,而p是指向一个Derived类型的指针,故在调用p-f()时,将调用Derived::f(),输
原创力文档

文档评论(0)