C 中异常说明符的用法 问题: C 中是否应该使用异常说明符编程? 答案: 否。 原因: 缺乏执行: 编译器没有严格执行异常 违规终止:不遵守说明符通常会导致程序终止,这并不总是可取的。 不一致在 Visual Studio 中: Visual Studio 将 throw(X) 视为 throw(...),从而损害了对 模板限制:异常规范阻碍了模板代码的创建,因为它们无法容纳执行过程中可能发生的异常。 禁止扩展性: 异常规范通过要求明确规范潜在的异常来限制代码的可扩展性,这些异常可能是未知的或未知的可预见的。 遗留代码的问题:库可能会抛出未知异常,在这种情况下使异常说明符不可靠。 推荐方法:返回通用将错误作为值,同时为特殊情况保留例外是更实用的方法接近。