C++ | Exception Handling | Question 7

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <iostream>
using namespace std;
  
int main()
{
    try
    {
        try
        {
            throw 20;
        }
        catch (int n)
        {
            cout << "Inner Catch\n";
            throw;
        }
    }
    catch (int x)
    {
        cout << "Outer Catch\n";
    }
    return 0;
}

chevron_right


(A)

Outer Catch

(B)

Inner Catch

(C)



Inner Catch
Outer Catch

(D) Compiler Error


Answer: (C)

Explanation: The statement ‘throw;’ is used to re-throw an exception. This is useful when a function can handles some part of the exception handling and then delegates the remaining part to the caller. A catch block cleans up resources of its function, and then rethrows the exception for handling elsewhere.

Quiz of this Question



My Personal Notes arrow_drop_up