gpt4 book ai didi

c++ - C++异常的核心优势

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:21:04 25 4
gpt4 key购买 nike

<分区>

我注意到在我的公司,人们似乎过度使用异常。用例示例:

void check(size_t s, int64_t i) 
{
if (i < 0 || size_t(i) >= s)
{
stringstream st;
st << "bar";
throw Exception (st.str());
}
}

foo & operator() (size_t i) const
{
// access out of range?
check(s,i);
return data[i];
}

在我看来,上面的例子应该用断言代替,因为程序会以 UB 结束。 (这不是一个必须继续工作才能让人们活着和/或使用传感器输入的系统)。

  • 在线程中处理异常很棘手
  • 特定于库的(非标准的)异常定义需要在程序中进行特殊处理
    • 使用多个具有自己的异常类型的库..
    • 在某些情况下,您必须检查数十个潜在的异常..

关于异常,我错过了什么?什么是例如核心优势?为什么要将错误处理拆分为程序和库?

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