关于 C++ 程序的异常处理,以下选项中描述错误的是( )?
这题考C++异常处理机制。拿到题先盯住B选项里‘一定’这种绝对词,异常发生后只要被catch住就能继续跑,所以B错。
很多学生一听到‘异常’就下意识地认为程序直接崩了,选了B。其实异常只是把控制权抛出去,如果上面有对应的catch,程序照样能接着往下走。另外D选项说‘任何地方抛出各种异常’,容易让人想到语法错误,但语法错误是编译期就报的,不会等到运行期再throw,这也是个高频坑。
【考点】异常处理机制|程序执行流程控制|语言特性理解
GESP六级《C++语言》模块重点考察运行时错误处理与程序控制流。命题人专盯考生对‘异常=程序崩溃’的刻板印象,用绝对化表述B选项测试你是否真正理解异常机制的弹性。
先定位异常本质——它是可捕获的运行时错误,不同于语法错误或逻辑错误。再看throw/catch的作用域:异常被捕获后,程序可跳转执行后续代码,而非立即终止。因此B选项‘一定不能继续执行’明显违背异常处理的基本原理,是典型陷阱。
A正确,错误是编译期或逻辑期问题,异常是运行时可恢复的错误;C正确,try/catch是标准异常处理语法;D正确,throw可在任意位置抛出异常。若把B改成‘异常未被捕获时程序终止’,则描述正确。刷到类似题先问:命题人想考我是否区分异常与错误、是否理解异常可被捕获、是否知道try/catch的作用范围。
关于考频趋势,从题库1295题的分布看,异常相关概念在2023年(287题)、2024年(413题)、2025年(401题)呈现爆发式增长,说明近年命题人明显加大了对此类‘概念辨析’的考查力度。六级作为入门与提高的过渡层级,这类考察逻辑严密性的题目占比逐年上升。
预测未来,随着2024-2025年数据所显示的强劲趋势,GESP六级乃至更高级别(七级、八级)在2026年及以后,极大概率会继续在‘异常处理’‘作用域’‘编译期vs运行期’等概念辨析上出题,且更倾向于用‘一定’‘总是’等绝对化词汇设置陷阱。暂无足够依据预测具体年份的题型变化,但整体方向明确:概念辨析类题目将保持高频。