GESP 六级 · GESP 202409 C++ 六级 第 19 题

判断题 · 答案 A · 考点:函数

← 整套速查表 GESP 六级 全部真题

题目

运行以下 C++ 代码,屏幕将输出 “derived class”。

#include <iostream>
using namespace std;

class base {
public:
    virtual void show() {
        cout << "base class" << endl;
    }
};

class derived : public base {
public:
    void show() override {
        cout << "derived class" << endl;
    }
};

int main() {
    base* b;
    derived d;
    b = &d;

    b->show();
    return 0;
}
答案:A

考点

函数

解题思维

C++类:构造函数(对象创建时调用)、析构函数(对象销毁时调用)、虚函数(实现多态)。构造函数不能为虚。

常见错误

构造函数不能是虚函数(虚表在构造函数完成后才建立)。析构函数可以且通常应该为虚函数(防止内存泄漏)。

详细解析(节选)

【考点】C++ 虚函数机制|多态|虚表

1. 🎯 考纲定位(考点定位)

本题考查 GESP 六级大纲「面向对象基础」模块中关于虚函数表(vtable)与运行时多态的机制。命题人专门卡住那些只背"继承"概念、不懂"虚表"的学生——他们往往误以为只要声明了 show() 就是虚函数,或者认为基类指针调用派生类函数时不产生多态。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断