gpt4 book ai didi

C++ 异常捕获子句

转载 作者:可可西里 更新时间:2023-11-01 15:09:30 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Scope of exception object in C++

我有以下 catch 子句:

catch(Widget w);
catch(Widget& w);

void passAndThrowWidget() {
Widget localWidget;
throw localWidget;
}

如果我们按值捕获 Widget 对象,编译器将进行复制,因此当我们抛出异常时,localWidget 超出范围,我们看不到任何问题。

如果我们通过引用捕获小部件对象,根据引用概念,“w”指向同一个本地小部件而不是拷贝。但我已经看到大多数异常都是由 C++ 中的引用捕获的。我的问题是,当抛出异常并通过指向被销毁的对象的引用点捕获时,它如何作为“localWidget”超出范围。

谢谢!

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