Gdb не дает стека для простого исключения std :: string uncaught - PullRequest
3 голосов
/ 13 августа 2010

Я немного новичок в GDB, так что здесь:

Я сейчас работаю над операцией модульного тестирования cpp.Я пытаюсь создать строковые объекты с недопустимыми параметрами, такими как null_char, но программа, как ожидается, дает исключения :).Когда я пытаюсь отладить приложение с помощью gdb, я набираю bt после сбоя, но он не выдает мне стекового сообщения.Есть идеи, почему это может произойти?Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 14 августа 2010

Может быть, стек просто бесполезен, потому что исключение никогда не перехватывается?Помните о точках перехвата в gdb:

catch throw

разрывается при возникновении исключения.

catch catch

разрывается при обнаружении исключения.

1 голос
/ 13 августа 2010

Добавьте параметр -g в командную строку компилятора, чтобы добавить символы отладки.Это очень помогает с gdb.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...