ий контекст. Для этого в прогр
Автор admin Суббота, 2 мая 2009 11:32
ий контекст. Для этого в программе создается объект с информацией об исключении, который затем «запускается» из текущего контекста (говорят, что в программе запускается исключение). Вот как это выглядит: //: С01:МуЕгтог.срр class MyError { const char* const data: public: MyError(const char* const msg = 0) : data (msg) {} }: void f() { // “Запускаем” объект исключения: throw MyError(“something bad happened”): } int mainO { // Как вскоре будет показано. // здесь должен находиться “блок try”: f(): } III- MyError — обычный класс, конструктор которого в нашем примере получает тип char*. При запуске исключения можно использовать произвольный тип (в том числе и встроенные типы), но обычно для этой цели создаются специальные классы. Ключевое слово throw производит целый ряд полузагадочных манипуляций. Сначала оно создает копию запускаемого объекта и фактически «возвращает» ее из функции, содержащей выражение throw, даже если тип этого объекта не соответствует типу, который положено возвращать этой функции. Обработку исключений можно упрощенно представить себе как альтернативный механизм возврата (но если зайти
Комментарии закрыты.
Последние комментарии