gpt4 book ai didi

c++ - 为什么不能从析构函数中抛出异常但可以从复制构造函数中抛出异常?

转载 作者:行者123 更新时间:2023-11-30 01:52:36 27 4
gpt4 key购买 nike

<分区>

似乎您不能从析构函数中抛出异常,以防从析构函数中抛出多个异常。

在 Effective C++ 中,Scott Meyers 使用了一个 vector 示例,其中第一个元素在销毁期间抛出异常,然后第二个元素抛出 - 导致 C++ 出现问题(无法处理多个异常)。

当然这种情况( vector 操作元素和元素抛出异常)也可能发生在复制构造函数实现深度复制期间?

编辑:

我们是说 dtor 调用底层 dtor 的递归性质与复制构造函数不同吗?

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