|
|
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
VS 2017 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Подскажите, почему не попадаю в catch ? спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:29:57 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Потому что при делении на ноль не выбрасывается std::exception. PS: Исключения обычно ловят константной ссылкой, а не значением. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:34:28 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Потому что при делении на ноль не выбрасывается std::exception. PS: Исключения обычно ловят константной ссылкой, а не значением. надеялся что with SEH поможет но не помогает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:43:20 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Для виндовса читай про SEH ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:43:52 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
подскажите как победить Код: plaintext 1. 2. 3. HandleStructuredException is undefined ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:45:35 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoviewкак победить 1. Встать на него курсором. 2. Нажать F1. 3. Прочитать в открывшейся справке в каком заголовке он объявлен. 4. Подключить этот заголовок. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:48:03 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov listtoviewкак победить 1. Встать на него курсором. 2. Нажать F1. 3. Прочитать в открывшейся справке в каком заголовке он объявлен. 4. Подключить этот заголовок. так норм EXCEPTION_EXECUTE_HANDLER ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:54:58 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoview подскажите как победить Код: plaintext 1. 2. 3. HandleStructuredException is undefined Написать функцию HandleStructuredException() Хэлп читай https://docs.microsoft.com/ru-ru/cpp/cpp/try-except-statement?view=vs-2019 Если исключение возникает во время выполнения защищенного раздела или в любой подпрограмме, вызванном вызовом защищенного раздела, вычисляется __except выражение (называемое критерием фильтра ), а значение определяет, как обрабатываются исключения. Есть три возможных значения: EXCEPTION_CONTINUE_EXECUTION (-1) исключение отклонено. Выполнение продолжается в точке, в которой возникло исключение. EXCEPTION_CONTINUE_SEARCH (0) исключение не распознано. Программа переходит к поиску обработчика в стеке (сначала находятся выражения с оператором try-except, а затем обработчики со следующим наивысшим приоритетом). Распознано исключение EXCEPTION_EXECUTE_HANDLER (1). Передайте управление обработчику исключений, выполнив составной оператор __except , а затем продолжайте выполнение после блока __except . Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. И учти что SEH и исключения С++ не очень хорошо уживаются . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 13:56:41 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Dima T И учти что SEH и исключения С++ не очень хорошо уживаются . У Рихтера где-то было. Как обработчик SEH бросал исключения C++, т.е. преобразовывал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:01:44 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Dima T listtoview подскажите как победить Код: plaintext 1. 2. 3. HandleStructuredException is undefined Написать функцию HandleStructuredException() Хэлп читай https://docs.microsoft.com/ru-ru/cpp/cpp/try-except-statement?view=vs-2019 Если исключение возникает во время выполнения защищенного раздела или в любой подпрограмме, вызванном вызовом защищенного раздела, вычисляется __except выражение (называемое критерием фильтра ), а значение определяет, как обрабатываются исключения. Есть три возможных значения: EXCEPTION_CONTINUE_EXECUTION (-1) исключение отклонено. Выполнение продолжается в точке, в которой возникло исключение. EXCEPTION_CONTINUE_SEARCH (0) исключение не распознано. Программа переходит к поиску обработчика в стеке (сначала находятся выражения с оператором try-except, а затем обработчики со следующим наивысшим приоритетом). Распознано исключение EXCEPTION_EXECUTE_HANDLER (1). Передайте управление обработчику исключений, выполнив составной оператор __except , а затем продолжайте выполнение после блока __except . Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. И учти что SEH и исключения С++ не очень хорошо уживаются . спасибо а как текст исключения получить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:02:42 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Я ставил SetUnhandledException() и из него выкидывал исключения С++. Работало, но было стрёмно. Поэтому вместо этого я стал из него рушить программу с дампом. Всё равно получние такого исключения это признак бага, которого надо ловить, а не обрабатывать. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:05:08 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoview а как текст исключения получить? Никак. Нет текста. listtoview А если внимательно код посмотреть? Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:18:30 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Dima T listtoview а как текст исключения получить? Никак. Нет текста. listtoview А если внимательно код посмотреть? Код: plaintext 1. 2. 3. 4. 5. 6. понял еще вопрос, как ловить все исключения? не писать же так всегда Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:26:02 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
или принято всегда int выбрасывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:28:31 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoviewкак ловить все исключения? catch(...) Но обычно вменяемые программисты точно знают наперёд что может выкинуться из данной конкретной секции. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:45:20 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov listtoviewкак ловить все исключения? catch(...) Но обычно вменяемые программисты точно знают наперёд что может выкинуться из данной конкретной секции. а тип исключения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:52:46 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
есть километр кода что и где упадет непонятно вот в c# все наследуются от Exception можно смело его ловить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:54:19 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoview есть километр кода что и где упадет непонятно вот в c# все наследуются от Exception можно смело его ловить В шарпе тоже вероятно умные прогеры не ловят смело его одного)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 14:57:00 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
PetroNotC Sharp listtoview есть километр кода что и где упадет непонятно вот в c# все наследуются от Exception можно смело его ловить В шарпе тоже вероятно умные прогеры не ловят смело его одного)) конечно или его одного и проверяют тип но факт в том что поймать можно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 15:01:38 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoview есть километр кода что и где упадет непонятно вот в c# все наследуются от Exception можно смело его ловить Увы, это недостаток С++. Точнее сказать последствия излишней свободы. И это касается не только исключений, а вообще очень многого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 15:02:02 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
подскажите, почему строку не ловит Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 15:03:03 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
Кстати, я вот не помню. Ловит ли SEH деление на ноль? Я думаю нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 15:03:56 |
|
||
|
Почему не попадаю в catch?
|
|||
|---|---|---|---|
|
#18+
listtoview есть километр кода что и где упадет непонятно вот в c# все наследуются от Exception можно смело его ловить Наследуйся от std::exception. Этот класс создан для исключений, стандартная библиотека его использует. А свой код сам смотри, только тебе видно что там нагорожено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2019, 15:04:05 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39907002&tid=2017498]: |
0ms |
get settings: |
12ms |
get forum list: |
23ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
50ms |
get topic data: |
18ms |
get forum data: |
4ms |
get page messages: |
97ms |
get tp. blocked users: |
2ms |
| others: | 319ms |
| total: | 539ms |

| 0 / 0 |
