题目
在 C++ 语言中,函数调用前必须有函数声明或定义。
答案:A
考点
函数
解题思维
判断正误题需注意绝对化表述("一定""必须""只能"等)往往是错误的。
常见错误
判断题中注意"一定""总是""所有""唯一"等绝对化表述通常是错误的。但也要结合具体知识点判断。
详细解析(节选)
【考点】函数声明|头文件包含|编译规则
1. 🎯 考纲定位(考点定位)
- GESP C++ 7 级「函数定义与声明」模块,属于第 12 章「程序结构」
- 命题人卡住的是「声明先于定义」的底层规则,90% 考生误以为定义顺序无所谓
- 这题在真实代码里很常见,但考试里却成了必考陷阱
2. 🧠 解题思维(拆解与通法)
- 看到函数调用 → 立刻检查是否有声明/原型
- 依据:C++ 标准规定函数必须先声明后调用,否则编译报错
- 通法:所有函数调用前必须存在声明,这是编译器的硬性要求
- 声明可以在同一文件头部,也可以在头文件里被 include 进来
3. 🪤 陷阱拆解(命题人的套路)
- 错误选项 B 利用「定义已存在」的错觉,诱导考生忽略声明必要性
- 最阴险细节是「或定义」三个字,考生易误以为定义即可替代声明
- 只背结论不读规则,就会掉进「定义顺序无关」的陷阱
- 命题人故意不强调「声明」,让考生以为「有定义就行」
4. 🔄 反命题思维(教练升华)
- 命题人视角:若改为「头文件声明是否可替代函数定义」,答案会变
- 刷到类似题先问自己:这题到底在考「声明必要性」还是「定义位置」
- 记住:C++ 里「必须先声明」是铁律,任何变体都绕不开它
同考点真题
- 第 25 题· GESP 二级样题(C++ 组) · 答案 B看解析 →
- 第 9 题· GESP 三级样题(C++ 组) · 答案 D看解析 →
- 第 3 题· GESP 四级样题(C++ 组) · 答案 D看解析 →
- 第 13 题· GESP 四级样题(C++ 组) · 答案 B看解析 →
- 第 24 题· GESP 四级样题(C++ 组) · 答案 B看解析 →