Рубрики

C ++ | Обработка исключений | Вопрос 8

#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;

  }

}

(А)

Caught 10

(В)

Constructing an object of Test 
Caught 10

(С)

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

(D) Ошибка компилятора

Ответ: (с)
Объяснение: Когда объект создается внутри блока try, деструктор для этого объекта вызывается перед передачей управления в блок catch.
Тест на этот вопрос

Рекомендуемые посты:

C ++ | Обработка исключений | Вопрос 8

0.00 (0%) 0 votes