Maison  >  Article  >  développement back-end  >  Comment utiliser la gestion des exceptions des fonctions C++ ?

Comment utiliser la gestion des exceptions des fonctions C++ ?

WBOY
WBOYoriginal
2024-04-15 15:57:01865parcourir

La gestion des exceptions est un mécanisme de gestion des erreurs de fonction, capturé à l'aide de la syntaxe try-catch : le bloc try contient du code qui peut générer des exceptions. Le bloc catch intercepte les exceptions d'un type spécifique, utilisez exception_type &e pour accéder à l'objet d'exception. catch (...) intercepte tout type d'exception. Par exemple, lors de la conversion d'une chaîne en nombre entier, les arguments non valides déclenchent une exception invalid_argument et les arguments hors plage déclenchent une exception hors plage.

C++ 函数异常处理如何使用?

Gestion des exceptions de fonction C++

La gestion des exceptions est une technique permettant de gérer les erreurs ou les exceptions au sein d'une fonction. Il vous permet de gérer les erreurs avec élégance sans faire planter l'ensemble du programme.

Syntaxe

La gestion des exceptions utilise la syntaxe suivante :

try {
  // 执行可能引发异常的代码
} catch (exception_type &e) {
  // 捕获特定类型的异常
} catch (...) {
  // 捕获任何类型的异常
}
  • Les blocs try contiennent du code qui peut générer des exceptions.
  • try 块包含可能引发异常的代码。
  • catch 块用于捕获特定类型的异常。它使用参数 exception_type &e 来访问异常对象。
  • 如果您希望捕获任何类型的异常,可以使用 catch (...)

实战案例

让我们看一个使用异常处理的实际示例:

#include <iostream>
#include <string>

using namespace std;

int main() {
try {
  // 将字符串转换为整数
  int num = stoi("abc");
} catch (invalid_argument &e) {
  // 处理无效参数异常
  cout << "Invalid integer: " << e.what() << endl;
} catch (out_of_range &e) {
  // 处理超出范围异常
  cout << "Out of range: " << e.what() << endl;
} catch (...) {
  // 处理任何其他异常
  cout << "Unknown error occurred." << endl;
}

return 0;
}

在这种情况下,我们尝试将 "abc" 转换为整数。如果字符串不包含有效的整数,它将引发 invalid_argument 异常。或者,如果值超出 int 范围,则会引发 out_of_rangeLe bloc catch est utilisé pour intercepter des types spécifiques d'exceptions. Il utilise le paramètre exception_type &e pour accéder à l'objet d'exception.

Si vous souhaitez intercepter tout type d'exception, vous pouvez utiliser catch (...). 🎜Cas pratique🎜🎜Regardons un exemple pratique d'utilisation de la gestion des exceptions : 🎜rrreee🎜Dans ce cas, nous essayons de convertir "abc" en un entier. Si la chaîne ne contient pas d'entier valide, elle déclenchera une exception invalid_argument. Alternativement, si la valeur est en dehors de la plage int, une exception out_of_range est levée. Nous utilisons la gestion des exceptions pour intercepter ces exceptions et les gérer avec élégance. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn