try、throw 和 catch 语句 (C++) |
您所在的位置:网站首页 › trycatch处理异常 › try、throw 和 catch 语句 (C++) |
try、throw 和 catch 语句 (C++)
项目
10/13/2023
若要在 C++ 中实现异常处理,可以使用 try、throw 和 catch 表达式。 首先,使用 try 程序块将可能引发异常的一个或多个语句封闭起来。 throw 表达式发出信号,异常条件(通常是错误)已在 try 程序块中发生。 可以使用任何类型的对象作为 throw 表达式的操作数。 该对象一般用于传达有关错误的信息。 大多数情况下,建议使用 std::exception 类或标准库中定义的派生类之一。 如果其中的类不合适,建议你从 std::exception 派生自己的异常类。 若要处理可能引发的异常,请在 try 程序块之后立即实现一个或多个 catch 程序块。 每个 catch 程序块都会指定它能处理的异常类型。 以下示例将显示 try 程序块及其处理程序。 假设 GetNetworkResource() 通过网络连接获取数据,并且两个异常类型是从 std::exception 派生的用户定义的类。 请注意,异常由 catch 语句中的 const 引用捕获。 我们建议你通过值引发异常并通过常数引用将其捕获。 示例 MyData md; try { // Code that could throw an exception md = GetNetworkResource(); } catch (const networkIOException& e) { // Code that executes when an exception of type // networkIOException is thrown in the try block // ... // Log error message in the exception object cerr |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |