gpt4 book ai didi

c++ - 我应该在所有异常都会导致终止的程序中使用异常处理吗?

转载 作者:太空宇宙 更新时间:2023-11-04 11:24:12 25 4
gpt4 key购买 nike

我目前正在开发一个模拟工具。该工具不是交互式的。所有可能的异常都是由于编程错误(在开发过程中)或损坏的输入数据造成的。如果发生异常,程序必须终止,因为继续运行毫无意义。

所以我有两个选择:

  1. 使用 C++ 异常处理。 Pro:我在调试时崩溃时得到堆栈跟踪。相反:严重 (?) 性能开销。
  2. 调用一个终止程序的错误函数。优点:快速简单。相反:没有堆栈跟踪。

问题:对性能的影响有多严重?一些异常可能源自对时间要求很高的函数。

如果我的考虑有任何根本性的错误,请告诉我。

最佳答案

正如@doc 建议的那样,我可能会使用assert 来跟踪与输入无关的编程错误。然后我会对与输入相关的错误使用异常。这不仅是异常的确切用途,如果您碰巧遇到一种类型的输入错误,您可以从中恢复异常框架。

关于c++ - 我应该在所有异常都会导致终止的程序中使用异常处理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27281127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com