断言的使用场景与注意事项 — 软件工程选择题
题目
某支付系统中,函数 process(amount) 在入口处对金额参数进行校验。以下四种做法中,正确体现了断言使用原则的是哪一项?
A. 用 assert 验证用户传入的金额 ≥ 0,并在发布版本中依赖它拦截非法输入
B. 用 assert 检查函数内部维护的缓存索引始终落在合法区间,并在生产环境关闭断言后保证程序仍能正确运行
C. 用 assert 处理用户输入为空的情况,因为断言抛出的异常信息更详细
D. 在断言失败分支中编写恢复账户余额的代码,以确保断言同时具备容错功能