C++ User Defined Exceptions

The new exception can be defined by overriding and inheriting exception class functionality.

C++ user-defined exception example

Let's see the simple example of user-defined exception in which std::exception class is used to define the exception.

Example

Example

#include <iostream>  

#include <exception>  

using namespace std;  

class MyException : public exception{  

    public:  

        const char * what() const throw()  

        {  

            return "Attempted to divide by zero!";  

        }  

};  

int main()  

{  

    try  

    {  

        int x, y;  

        cout << "Enter the two numbers : ";  

        cin >> x >> y;  

        if (y == 0)  

        {  

            MyException z;  

            throw z;  

        }  

        else  

        {  

            cout << "x / y = " << x/y << endl;  

        }  

    }  

    catch(exception& e)  

    {  

        cout << e.what();  

    }  

}

Output:

Output

Enter the two numbers :

10

2

x / y = 5

Output:

Output

Enter the two numbers :

10

0

Attempted to divide by zero!

Note: In above example what is a public method provided by the exception class. It is used to return the cause of an exception.

Input Required

This code uses input(). Please provide values below: