Используете ли вы исключения?

Тема в разделе "Общие вопросы по С и С++", создана пользователем rrrFer, 10 авг 2016.

?

Используете ли вы исключения?

  1. Да, использую только исключения

    2 голосов
    66,7%
  2. Нет, но использую возврат кода ошибки в каждой функции

    0 голосов
    0,0%
  3. Использую вперемешку исключения и коды ошибок (в комментариях точно напишу как это все не ломается)

    0 голосов
    0,0%
  4. Вообще не обрабатываю ошибки (впервые слышу про исключения и коды ошибок)

    1 голосов
    33,3%
  1. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    В язык С++ встроен механизм обработки исключений (exceptions), однако ряд программистов отказываются их использовать.

    Например до недавнего времени популярная библиотека Qt по-старинке использовала коды возврата функций вместо исключений - мотивировалось это трудностью реализации исключений на каких-то специфических платформах, которые Qt поддерживала.

    Несколько других примеров можно было увидеть на последних конференциях С++ Russia и C++ Syberia. Ряд докладчиков рассказывали как они в своих проектах на С++ обходятся без исключений - среди них были и разработчики Яндекса с докладом Аскетичная разработка браузера.

    Тем не менее, большинство книг о чистом коде пропагандируют использование механизма исключений, включая рекомендацию начинать разработку функции с написания блока try {} у Боба Мартина (Мартин Р. Чистый код. Создание, анализ и рефакторинг. Библиотека программиста).

    Аналогичного мнения придерживается Скотт Мейерс, у которого целая глава книги посвящена обработке исключений в С++ (Мейерс С. Эффективное использование С++. 35 новых рекомендаций по улучшению ваших программ и проектов). При этом все же отмечает, что исключения не являются серебряной пулей и требуется тщательное проектирование программы с учетом использования исключений.

    В связи с этим ответьте - используете ли вы исключения в своих проектах. В комментариях напишите почему и как вы это делаете.
     
Загрузка...

Поделиться этой страницей