/ Видеокурсы / С++ программирование / Уроки C++ / Урок #7 - Исключения

Урок #7 - Исключения

Урок #7 - Исключения


C++

Исключения в языке C++. В этом уроке мы рассмотрим такую вещь как try catch. Благодаря этой схеме мы сможем вылавливать ошибки и безболезненно указывать пользователю на эту ошибку.

Видео урок:

Исключения это то, что может непредвиденно возникнуть в ходе работы программы. Если такое случиться, то программа просто перестанет работать или же вовсе выключиться. Чтобы такого не допустить вам всегда стоит добавлять исключения при работе с различными вещами.

К примеру, вы хотите добавить возможность деления двух чисел? Добавьте также исключение, которое позволит проверять, не является ли делитель нулем. Вы хотите открыть файл для записи в него? Пропишите исключение, которое будет срабатывать если файл не найден, чтобы программа не пыталась его открывать повторно.

Для реализации исключений в языке C++ существует оператор try catch. Оператор проверяет некое действие и запускает исключение, если была найдена ошибка:

try { // В этом блоке идет проверка кода на ошибки
  if (variable == 0) // Проверяем делитель на ноль
      throw 277; // Запускаем исключение и передаем в него параметр
  cout << something / variable << endl;   
} catch(int i) { // Здесь отлавливаем переданный в throw параметр
  // Если такой параметр есть, то мы избежали ошибку, но она могла бы быть
  // Мы можем что-то с этим сделать, к примеру просто сказать об этом пользователю!
  cout << "Нам очень повезло!" << endl;
  cout << "Нам удалось изежать ошибки с индексом " << i << " - на 0 делить нельзя!";
}

Вы можете удивиться зачем использовать этот оператор, если можно обойтись простыми условными операторами. Возможно, в некоторых случаях использование условных операторов действительно будет проще, но для отслеживания различных ошибок в ходе программы, когда программа на гране "зависания" лучше использовать именно try catch, в котором мы сможем контролировать все этапы работы программы. Кроме того, есть случаи, где без исключений отловить ошибку будет очень сложно.


Программа может возвращать не только числовое значение, но также это может быть и строки. В блоке try catch можно указывать несколько операторов catch, которые будут отслеживать сразу несколько разных исключений.

Код из видео урока

Весь код из урока
Чтобы просмотреть этот код необходимо оформить подписку на сайт

Онлайн редактор кода

Домашнее задание к видео уроку

Необходимо подписаться на проект, чтобы получить доступ к этому практическому домашнему заданию!Необходимо подписаться на проект, чтобы получить доступ к этому практическому домашнему заданию!

Большое задание на весь курс

Это задание позволяет закрепить ваши знания по какому-либо видеокурсу. Оно является большим и справившись с ним вы полностью освоите данный видеокурс. К заданию также есть "Готовое решение", а также описывается методика решения задания.
PS: подобные задания доступны только при подписке от 1 месяца!

C++

Рекомендуемые курсы