C++ User Defined Exceptions - C++ Programming Tutorial
C++ Course / Exception Handling / C++ User Defined Exceptions

C++ User Defined Exceptions

BLUF: Mastering C++ User Defined Exceptions is a critical step in becoming a proficient C++ developer. This lesson provides a deep dive into the syntax, performance considerations, and real-world applications of this concept.
Key Performance Insight: C++ User Defined Exceptions

C++ is renowned for its efficiency. Learn how C++ User Defined Exceptions enables low-level control and high-performance computing in the tutorial below.

The creation of a unique exception is achievable by overriding the methods and inheriting the behavior of the exception class.

C++ user-defined exception example

Let's explore a basic illustration of a custom exception where the std::exception class is employed 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:

Logic Practice
Install Logic Practice
Add to home screen for a faster app-like experience