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

43 lines
1.3 KiB
Markdown
Raw Normal View History

2018-10-12 19:37:13 +00:00
---
title: Error Handling
---
# C++ Exception Handling
An exception is a problem that arises during the execution of a program.Exceptions provide a way to transfer control from one part of a program to another. C++ exception handling is built upon three keywords: #try, #catch, and #throw.
* #throw A program throws an exception when a problem shows up. This is done using a throw keyword.
* #catch A program catches an exception with an exception handler at the place in a program where you want to handle the problem. The catch keyword indicates the catching of an exception.
* #try A try block identifies a block of code for which particular exceptions will be activated. It's followed by one or more catch blocks.
```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;
}
```
# Before you go on...
## A review
* Grouping of Error Types.
* Separation of Error Handling code from Normal Code.
* Functions/Methods can handle any exceptions they choose.