【发布时间】:2010-11-04 08:44:48
【问题描述】:
在 C++0x 中抛出异常对性能有何影响?这个编译器依赖多少?这和问what is the cost of entering a try block, even if no exception is thrown不一样。
我们是否应该期望像在 Java 中那样将异常更多地用于一般逻辑处理?
【问题讨论】:
-
你不应该使用异常来处理 Java 中的一般逻辑。
-
@Bill: s/in Java/EVER/ 它们被称为“例外”是有原因的;他们很特别。
-
为什么你认为 C++0x 异常与其他异常会有这么大的不同?我认为大多数变化将在实现之间。
-
例外情况会产生费用。但这不应该是你担心的。它应该是使用异常和不使用异常获取相同信息之间的成本差异(因此返回错误代码 >>>>AND
-
您能解释一下我的基准应该如何修改,以便您有机会赢得该赌注吗?我的“thrower”函数只是调用并返回 void。我的“returner”函数进行调用,检查返回值,并相应地返回成功或失败。 “thrower”函数显然要慢一些,但还不足以影响大多数应用程序。
标签: c++ performance exception