freeCodeCamp/guide/russian/cplusplus/error-handling/index.md

49 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Error Handling
localeTitle: Обработка ошибок
---
# Обработка исключений на C ++
Исключением является проблема, возникающая во время выполнения программы. Исключения обеспечивают способ передачи управления из одной части программы в другую. Обработка исключений C ++ построена на трех ключевых словах: #try, #catch и #throw.
* # throw - программа выдает исключение, когда возникает проблема. Это делается с использованием ключевого слова throw.
* # catch - программа выхватывает исключение с обработчиком исключений в месте в программе, где вы хотите справиться с этой проблемой. Ключевое слово catch указывает на улавливание исключения.
* #try - блок try идентифицирует блок кода, для которого будут активированы определенные исключения. За ним следует один или несколько блоков catch.
```CPP
#include <iostream>
using namespace std;
int main()
{
int x = -1;
// Some code
cout << "Before try \n";
try {
cout << "Inside try \n";
if (x < 0)
{
throw x;
cout << "After throw (Never executed) \n";
}
}
catch (int x ) {
cout << "Exception Caught \n";
}
cout << "After catch (Will be executed) \n";
return 0;
}
```
# Прежде чем продолжить ...
## Обзор
* Группировка типов ошибок.
* Разделение кода обработки ошибок из нормального кода.
* Функции / методы могут обрабатывать любые исключения, которые они выбирают.