C++ | Exception Handling | Question 8

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <iostream>
using namespace std;
  
class Test {
public:
   Test() { cout << "Constructing an object of Test " << endl; }
  ~Test() { cout << "Destructing an object of Test "  << endl; }
};
  
int main() {
  try {
    Test t1;
    throw 10;
  } catch(int i) {
    cout << "Caught " << i << endl;
  }
}

chevron_right


(A)

Caught 10

(B)

Constructing an object of Test 
Caught 10

(C)



Constructing an object of Test 
Destructing an object of Test 
Caught 10

(D) Compiler Error


Answer: (C)

Explanation: When an object is created inside a try block, destructor for the object is called before control is transferred to catch block.

Quiz of this Question



My Personal Notes arrow_drop_up

Improved By : mayank5326