powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Обработка исключений отсутствует
25 сообщений из 97, страница 2 из 4
Обработка исключений отсутствует
    #38391816
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
? http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Exceptions

Кстати, доводы против исключений все абсолютно дурацкие, все в стиле " как бы чего не вышло ", в современных условиях современный с++ программист и так обязан учитывать все то, что у них записано в Cons.
Код тестировать все равно надо, так что что с исключениями, что без, одинаково.
В общем, кто-то очень хотел запретить исключения, и запретил. По всем бюрократическим правилам, демократично решил.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392026
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
MasterZivКстати, доводы против исключений все абсолютно дурацкие, все в стиле " как бы чего не вышло ", в современных условиях современный с++ программист и так обязан учитывать все то, что у них записано в Cons.
Код тестировать все равно надо, так что что с исключениями, что без, одинаково.
В общем, кто-то очень хотел запретить исключения, и запретил. По всем бюрократическим правилам, демократично решил.Ну да, с++ программист обязан учитывать, что любая функция может выкинуть абсолютно любое исключение, которое непонятно как обрабатывать.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392030
?MasterZivКстати, доводы против исключений все абсолютно дурацкие, все в стиле " как бы чего не вышло ", в современных условиях современный с++ программист и так обязан учитывать все то, что у них записано в Cons.
Код тестировать все равно надо, так что что с исключениями, что без, одинаково.
В общем, кто-то очень хотел запретить исключения, и запретил. По всем бюрократическим правилам, демократично решил.Ну да, с++ программист обязан учитывать, что любая функция может выкинуть абсолютно любое исключение, которое непонятно как обрабатывать.
А с-программист обязан учитывать, что любая функция может выкинуть абсолютно любой код возврата, который непонятно как обрабатывать
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392049
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А бывают еще и Unhandled C++ Exceptions ..
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392083
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про отключенные исключения.
Я понимаю что их можно отключить.
Но это сразу отключает многие фичи буста и стл, и многих других библиотек, без которых ни один крупный проект не обходится.

Так что помечтать можно, а потом надо спуститься на землю и признать что отключать исключения никто не будет, также как и писать throw() на каждую функцию.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392184
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonА бывают еще и Unhandled C++ Exceptions ..

В Win32/64 бывают и Unhandled non-C++ exceptions...
В Linux/Unix бывают сигналы ...

и что?
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392191
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
?Ну да, с++ программист обязан учитывать, что любая функция может выкинуть абсолютно любое исключение, которое непонятно как обрабатывать.

Именно.

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

Ты должен быть готов к любым исключениям, но если ты не знаешь, что это за исключение будет или не знаешь, что с ним делать -- просто ничего не делай. Но локальные ресурсы надо защитить.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392198
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyПро отключенные исключения.
Я понимаю что их можно отключить.
Но это сразу отключает многие фичи буста и стл, и многих других библиотек, без которых ни один крупный проект не обходится.

Так что помечтать можно, а потом надо спуститься на землю и признать что отключать исключения никто не будет, также как и писать throw() на каждую функцию.

Так если гугловцы не используют исключения, они должны их выключать при сборке, либо быть готовым ко всему, что у них записано в CONS.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392208
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv,

У гугловцев есть возможность закидать всех шапками (реализовать все необходимые им библиотеки самим).
Так что может и отключают.
Обычные разработчики - не могут себе это позволить.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392214
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
любой код возврата?пропущено...
Ну да, с++ программист обязан учитывать, что любая функция может выкинуть абсолютно любое исключение, которое непонятно как обрабатывать.
А с-программист обязан учитывать, что любая функция может выкинуть абсолютно любой код возврата, который непонятно как обрабатывать

Вообще, функция должна возвращать свой результат, а не признак успешного завершения.
Я так глубоко убеждён.
И кодирование это на С в старом стиле K&R -- это на самом деле какой-то ад, а не программирование.
Там вот и пишут такие саги на 3 страницы, которые всего-то открывают файл.

Оно конечно, где-то и такой код нужен, и оправдан, но уж больно он черезжопенский.

И ещё на счёт исключений -- я глубоко убеждён, что не любит исключения только тот, кто их не понимает. А не понимает он их только по одной причине -- не хочет понять. Потому что исключения -- очень простая концепция, уже вошедшая во многие современные языки, и ничего сложного в них нет, это очень легко понять. Это даже не conditions из common lisp и не continuation из schema. Это очень просто.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392228
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivА не понимает он их только по одной причине -- не хочет понять.
Думаю что и претенции к скорости исключений тоже всего лишь повод. Т.к. в подавляющем большинстве случаев скорость не важна.
Намного важнее читаемость и сопровождаемость кода, что как раз дают исключения (если применять с умом)
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392249
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
MasterZivно если ты не знаешь, что это за исключение будет или не знаешь, что с ним делать -- просто ничего не делайИменно это и предлагается в первом посте топика.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392255
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyMasterZivА не понимает он их только по одной причине -- не хочет понять.
Думаю что и претенции к скорости исключений тоже всего лишь повод. Т.к. в подавляющем большинстве случаев скорость не важна.
Намного важнее читаемость и сопровождаемость кода, что как раз дают исключения (если применять с умом)
Скорость важна в численных методах к примеру, но там нет места try{..}catch и если
хотят фиксировать деления нуля на ноль то скорее всего выставляют проверяют
NaN в на вершине стека FPU. Эдакая-себе "бесчувственная" молотилка чисел.

Исключения - это всё-таки более высокий уровень и я думаю автор попал на "границу" между
этими уровнями. Пускай хоть скажет что у него за код который якобы нивкоем разе не должен
использовать исключения.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392269
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Так сказал же - игруха.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392270
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
любой код возвратаА с-программист обязан учитывать, что любая функция может выкинуть абсолютно любой код возврата, который непонятно как обрабатыватьНо только это не влияет на ход выполнения вашего кода. А с исключениями надо всегда учитывать, что следующая после вызова функции строка кода может и не выполниться.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392282
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovskymayton,

Так сказал же - игруха.
Дак фик его знает. Онаж игруха не только из engine состоит.
Щас игрухи могут содержать вполне себе православный скриптинг. Язык сценариев.
И там вполне возможно механизм exceptions будет полезен.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392296
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
MasterZivВ Win32/64 бывают и Unhandled non-C++ exceptions...
ну их-то обычно нет смысла перехватывать и пытаться продолжать работу
В Linux/Unix бывают сигналы ...
и после этого программа либо умерла, либо продолжила выполнение с того же места

Проблема с исключениями только в том, что очень легко сделать ошибку, из-за которой после перехвата исключения программа продолжит работу с неправильными данными. Иногда лучше, чтобы всё сразу упало.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392344
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
MasterZivТак если гугловцы не используют исключения, они должны их выключать при сборке, либо быть готовым ко всему, что у них записано в CONS.не, это означает что любое исключение в стороннем коде - это total crash.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392465
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
?любой код возвратаА с-программист обязан учитывать, что любая функция может выкинуть абсолютно любой код возврата, который непонятно как обрабатыватьНо только это не влияет на ход выполнения вашего кода. А с исключениями надо всегда учитывать, что следующая после вызова функции строка кода может и не выполниться.

Это не так. Если например не выделилась память, а ты это не проверил через какой-то код возврата
(да хоть тот же malloc на NULL), то первый же код, который эту память будет использовать, упадёт.
Такие же случаи могут быть и с другими видами объектов и функциями.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392471
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Win32/64 бывают и Unhandled non-C++ exceptions...
ну их-то обычно нет смысла перехватывать и пытаться продолжать работу

Если бы это было бы так, то и исключения SEH никто бы не придумывал. Были бы как в линухе segfault -- и всё.



Проблема с исключениями только в том, что очень легко сделать ошибку, из-за которой после перехвата исключения программа продолжит работу с неправильными данными. Иногда лучше, чтобы всё сразу упало.


Это не проблема исключений или их отсутствия. Это -- вообще общая проблема программирования.
Когда программируешь, очень легко сделать ошибку.

Ну и что теперь с этим делать, не программировать ?
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392846
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivИ ещё на счёт исключений -- я глубоко убеждён, что не любит исключения только тот, кто их не понимает. А не понимает он их только по одной причине -- не хочет понять. Потому что исключения -- очень простая концепция, уже вошедшая во многие современные языки, и ничего сложного в них нет, это очень легко понять. Это даже не conditions из common lisp и не continuation из schema. Это очень просто.А я глубоко убежден что я не использую исключения именно потому что понимаю их :) Концепция простая, но излишне подверженная кривому кодированию.
Есть языки где без исключений жить нельзя вообще (почти все функциональные например), но в С++ можно прекрасно жить без исключений.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392863
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owlно в С++ можно прекрасно жить без исключений
Некоторые и без ног живут, и ставят спортивные рекорды.
Но это не благодаря, а вопреки. :)
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392887
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlMasterZivИ ещё на счёт исключений -- я глубоко убеждён, что не любит исключения только тот, кто их не понимает. А не понимает он их только по одной причине -- не хочет понять. Потому что исключения -- очень простая концепция, уже вошедшая во многие современные языки, и ничего сложного в них нет, это очень легко понять. Это даже не conditions из common lisp и не continuation из schema. Это очень просто.А я глубоко убежден что я не использую исключения именно потому что понимаю их :) Концепция простая, но излишне подверженная кривому кодированию.
Есть языки где без исключений жить нельзя вообще (почти все функциональные например), но в С++ можно прекрасно жить без исключений.
+1 Прекрасно понимаю. Я-бы и в java жил без Exceptions. Но кто надоумил Гослинга
внедрить такой вот странный workaround вокруг таймаута (try {Thread.sleep(ms);} catch (InterruptedException e) {}).
ИЧСХ по другому этот кусок кода не написать особенно если обёртывающий метод implemented жёстко заданный тип исключения.
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392890
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

А такое что мешает сделать?
Код: plaintext
1.
MyUtils.sleep(ms); 
...
Рейтинг: 0 / 0
Обработка исключений отсутствует
    #38392892
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лень импорты тащить. Или декларации. Я уже докатился до того что создаю
свои atoi, printf в java.
...
Рейтинг: 0 / 0
25 сообщений из 97, страница 2 из 4
Форумы / C++ [игнор отключен] [закрыт для гостей] / Обработка исключений отсутствует
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]