何时以及如何使用异常处理?
我正在读关于异常处理。我得到了一些关于异常处理的信息,但我有几个问题:
什么时候抛出异常?
我们可以使用返回值来指示错误,而不是抛出异常吗?
如果我通过try-catch块保护我的所有功能,它不会降低性能吗?
何时使用异常处理?
我看到一个项目,该项目中的每个函数都包含一个try-catch块(即整个函数内的代码被try-catch块包围)。这是一个好习惯吗?
try-catch和__try __except有什么区别?
没有找到相关结果
已邀请:
7 个回复
痴浪墨
浩挎
倪蕊悲潍
惭法搽
是什么? 逻辑错误几乎是定义阻止程序继续的条件。如果程序是逻辑构造,并且条件发生在该逻辑的域之外,那么它如何继续?你可以收集你的投入,然后抛出异常! 它不像现有技术那样。
,仅举一例,抛出一个逻辑错误异常,即
。如果您使用标准库并且没有顶级处理程序来捕获标准异常 - 如果只调用what()和exit(3) - 那么您的程序将受到突然的静默,终止。 断言宏是一个弱得多的守卫。没有恢复。除非,即你没有运行调试版本,在这种情况下没有执行。断言宏属于计算比今天慢6个数量级的时代。如果您在测试逻辑错误时遇到麻烦,但在生产时不使用该测试,那么在生产中,您最好对代码充满信心! 标准库提供逻辑错误异常,并使用它们。它们存在是有原因的:因为逻辑错误发生,并且是例外。仅仅因为C特征断言没有理由依赖这种原始(并且可以说是无用的)机制,当异常处理工作时要好得多。
扦帽次杏
浅镁
。使用trycatch
可以在发生错误时帮助您。或者你需要
in
如果你不尝试捕捉异常我不认为它更快,它只是简单地绕过,如果
发生它将是outer8ѭ外部处理程序。 交出自己意味着问题不会更进一步,在许多情况下在速度方面具有优势,但并非总是如此。 建议:在简单和逻辑上处理你自己。
死簇