The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"А почему throw может валить задачу в дамп?"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"А почему throw может валить задачу в дамп?" 
Сообщение от Lamr emailИскать по авторуВ закладки on 17-Фев-05, 21:03  (MSK)
Конструктор отрабатывает, выводит тестовое сообщение, а до catch дело не доходит; - core dumped. И деструктор исключения тоже не отрабатывает.

    Так происходит, если точки для перехвата в стеке нет, но я поставил catch (...), должен поймать по теории.

Может кто разбирался уже с траблом?

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "А почему throw может валить задачу в дамп?" 
Сообщение от Lamr emailИскать по авторуВ закладки on 17-Фев-05, 21:07  (MSK)

> Может кто разбирался уже с траблом?


Да, ещё могу сказать, что исключение генерит переменная класса, которая описана глобальной ( за пределами main ). Т е ничего исчезать или быть за пределами видимости не должно вообще-то

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "А почему throw может валить задачу в дамп?" 
Сообщение от Dead Mustdie emailИскать по авторуВ закладки on 18-Фев-05, 09:38  (MSK)
>Конструктор отрабатывает, выводит тестовое сообщение, а до catch
>дело не доходит; - core dumped. И деструктор исключения
>тоже не отрабатывает.
>
>    Так происходит, если точки для перехвата в стеке
>нет, но я поставил catch (...), должен поймать по теории.
>
> Может кто разбирался уже с траблом?

Если исключение не обрабатывается, то вызывается abort().
Если исключение не ловится на catch(...), то это не исключение :).
Причина coredump'а может быть и не в самом факте выброса исключения.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "А почему throw может валить задачу в дамп?" 
Сообщение от Lamr emailИскать по авторуВ закладки on 18-Фев-05, 10:14  (MSK)

>Если исключение не ловится на catch(...), то это не исключение :).

Это точно, я кажись понял причину. Как я писал throw генерил член класса, который я поместил за функцией main. А catch - внутри функции main. Ему некуда просто стек раскручивать - он за пределами всех функций, на самом верху стека.

Не знаю, правильны мои рассуждения или нет, но прога заработала когда я поместил член в main :-))
  Член класса :-))


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру