GESP 七级 · GESP 202412 C++ 七级 第 21 题

判断题 · 答案 B

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

题目

C++ 是一种面向对象编程语言,C 不是。继承是面向对象三大特性之一。因此,使用 C 语言无法实现继承。

答案:B

解题思维

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

常见错误

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

详细解析(节选)

created by

【考点】面向对象特性|语言特性|继承机制

1. 考纲定位:GESP 七级“编程语言与体系结构”模块,命题人专门卡住“语言特性”这一硬门槛。学生往往死记"C++是面向对象,C不是”,却忽略“面向对象≠唯一含继承的语言”,导致在真/假判断上失分。该题实际在考“语言特性对比”这一基础概念,而非复杂算法。命题人借此区分“记忆型”与“理解型”考生。

2. 解题思维:看到“继承是面向对象三大特性之一”先确认 C++ 支持类与继承,再看 C 无类机制。核心推理链:OOP 特性需要类→C 无类→C 无继承。这类题通法:先定位语言特性(类/结构体/接口等),再判断目标语言是否具备对应机制。若遇到"Python支持动态类型,C不支持”这类题,同样先定位“动态类型”这一特性再判断。解题关键是“语言特性映射”,即把抽象特性对应到具体语言机制。

3. 陷阱拆解:题干用“因此”强行推导,利用“绝对化表述”陷阱——把“面向对象语言必然有继承”偷换为“只有面向对象语言才有继承”。很多考生只背结论,会误选 A,因为他们忽略了 Ada、Eiffel 等非 C++ 语言也支持继承,且 C++ 本身可纯过程式使用。此外,题干未区分“类”与“结构体”——C 的结构体虽无继承,但可通过宏模拟部分行为,这也是陷阱。若只背"C++支持继承,C不支持”,就会掉进这个绝对化陷阱。

4. 反命题思维:命题人若把"C++"换成"Ada"或"Eiffel",题干仍成立;若把“继承”换成“多态”,题干变成"C++支持多态,C不支持”,依然是真。刷到此类题先问:“题干是否在偷换‘必要条件’为‘充分条件’?”——这类陷阱通常出现在语言特性对比题,识别后能避免盲目选 A。命题人可能还会把"C++"换成"Java",题干变成"Java支持继承,C不支持”,同样为真。

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