在 C++ 中抛出异常
C++抛出异常是C++的一个强大功能,可用于处理错误和意外事件。 它主要用于终止程序的执行或将控制权转移到程序的不同部分。
在 C++ 中抛出异常
C++ 异常是由异常情况生成的,例如无效参数、除以零等。编译器可以为其在编译时检测到的每个错误创建异常。
然而,程序员也可以通过在代码中使用关键字 throw 来引发异常。
除了 throw 之外,我们还有一个 catch 和 try 关键字。
- Catch - 代码使用异常处理程序在代码中必须解决问题的位置捕获异常。 catch 关键字表示已捕获异常。
- try - try 块指示将触发某些异常的代码部分。 一个或多个 catch 块紧随其后。
假设某个块会引发异常,则方法通过组合 try 和 catch 关键字来捕获异常。 try/catch 块封装了可能引发错误的代码。
在 C++ 中使用异常的目的
异常是 C++ 中处理错误的一种方式。 它们用于使代码更加高效、可维护和健壮。
异常允许程序员比简单地返回错误代码或状态代码更系统地处理错误。 异常机制设计得非常灵活,可以用来处理程序执行过程中可能发生的任何错误。
异常的一些常见用途包括:
- 检测无效的输入参数
- 检测无效数据结构
- 处理 I/O 错误
- 处理内存分配失败等
使用C++抛出异常
本节提供有关使用 C++ 引发异常的指南。
- 使用 C++ 抛出异常的第一步是创建一个类。
- 第二步是为该类创建一个构造函数。 这将用于初始化类中的变量,并且在从此类创建对象时也将使用它。
- 通过调用构造函数然后调用方法来创建此类的对象。 如果代码中有错误,这个方法会抛出异常并打印出一些信息。
让我们使用上述步骤讨论一个示例。
#include <iostream>
using namespace std;
double division(int a, int t) {
if( t == 0 ) {
throw "You are dividing with number 0 that makes impoosible to execute the operation ";
}
return (a/t);
}
int main () {
int x = 4;
int y = 0;
double z = 4;
try {
z = division(x, y);
cout << z << endl;
} catch (const char* msg) {
cerr << msg << endl;
}
return 0;
}
相关文章
Arduino 复位
发布时间:2024/03/13 浏览次数:315 分类:C++
-
可以通过使用复位按钮,Softwarereset 库和 Adafruit SleepyDog 库来复位 Arduino。
Arduino 的字符转换为整型
发布时间:2024/03/13 浏览次数:181 分类:C++
-
可以使用简单的方法 toInt()函数和 Serial.parseInt()函数将 char 转换为 int。
Arduino 串口打印多个变量
发布时间:2024/03/13 浏览次数:381 分类:C++
-
可以使用 Serial.print()和 Serial.println()函数在串口监视器上显示变量值。