Вопрос

Я ежедневно использую TDD для своей разработки на C ++ в Solaris10.Это значительно сократило время, которое мне приходится тратить на использование моего отладчика, но иногда это единственный вариант.

DBX довольно мощный, но не настолько удобный в использовании.Обратите внимание, что я говорю о консольном DBX, а не о графическом интерфейсе SunStudio для DBX).

Какие наилучшие советы по повышению производительности вы можете дать при отладке dbx C ++?

PS.Смена отладчика - это не вариант.

Это было полезно?

Решение

Я добавил в закладки несколько сайтов, связанных с dbx.Вот они, в произвольном порядке, на случай, если они могут быть вам полезны:

ПРАВКА от 19 июля 2012 года:Я пытался исправить несколько ссылок с тех пор, как блог Криса Кенеля переместился.Доступ к некоторым статьям все еще возможен благодаря машине обратной связи.

Другие советы

Одной из мощных функций dbx является встроенный ksh.Вы можете писать функции оболочки, которые настолько сложны, насколько вам может понадобиться для печати настраиваемых представлений структур данных или следования указателям по определенному маршруту.Оболочка - это старая разновидность pdksh, поэтому она не самая удобная для программирования, но это намного лучше, чем отсутствие какого-либо встроенного языка для использования.Существует также обширная справка, доступная из командной строки.Один из способов поиска в справке - использовать "vi $helpfile" из командной оболочки dbx.Это объединяет необработанные данные файла справки в один большой файл.Вы можете увидеть некоторые примеры функций оболочки в файле dbxrc, который поставляется с dbx и загружается по умолчанию.Вы можете увидеть более сложный пример, взглянув на модуль интеграции libumem.Вы можете найти его здесь:

http://blogs.oracle.com/quenelle/entry/using_dbx_and_libumem_to

Я тоже иметь использовать dbx на работе и понимать ваши разочарования!

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

Используя встроенную систему команд, подобную этой:когда остановка { печать неважно ; }
Очевидно, что это не работает, когда неважно это выходит за рамки, но я нахожу это достаточно полезным.Мне еще предстоит испытать много радости от объекта "trace", YMMV.

Создание вашего собственного файла .dbxrc значительно упрощает жизнь, как и функция "pathmap".

Наконец, это очевидно только в том случае, если вы это уже знаете, но попробуйте Руководство Sun по эксплуатации.

Она написана не особенно хорошо, но все равно полезна для чтения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top