Какой лучший отладчик Linux C/C++ (или интерфейс для gdb) помогает обучению программированию?

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

Курс преподается в Linux. Научить их использовать GDB просто излишне (они не будут использовать и понимать большинство функций). Мне просто нужно что-то простое, но простое в использовании: чтобы увидеть, в какой строке находится программа, что находится в стеке (локальные переменные, предыдущие вызовы и т. Д.). Я похож на старый Turbo Pascal, отладчик Turbo C++ Borland или Visual Studio.

Спасибо,

6 ответов

DDD - это графический интерфейс к GDB, который довольно хорош. Одним из недостатков является классический интерфейс X, но, кажется, я помню, что он довольно интуитивно понятен.

Вы можете попробовать использовать графический интерфейс Insight для GDB, написанный Red Hat. Если вы используете среду рабочего стола GNOME, вы также можете попробовать Nemiver.

Вы можете проверить Eclipse CDT. Он предоставляет C/C++ IDE, которая работает на нескольких платформах (например, Windows, Linux, Mac OS X и т. Д.). Отладка в Eclipse CDT сравнима с использованием других инструментов, таких как Visual Studio.

Вы можете ознакомиться с руководством по отладке Eclipse CDT, которое также содержит несколько снимков экрана.

Qt Creator, помимо других полезностей, также имеет хорошую интеграцию отладчика для CDB, GDB и отладчика Symnbian на всех поддерживаемых платформах. Вам не нужно использовать Qt для использования IDE Qt Creator, равно как и QMake - он также имеет интеграцию с CMake, хотя QMake очень прост в использовании.

Возможно, вы захотите использовать Qt Creator в качестве IDE для обучения программированию, учитывая, что у него есть несколько полезных функций:

  • Очень умный и продвинутый редактор C++
  • Инструменты управления проектами и сборками
  • Интеграция QMake и CMake
  • Интегрированная контекстно-зависимая справочная система
  • Отличный визуальный отладчик (CDB, GDB и Symbian)
  • Поддерживает GCC и VC++
  • Инструменты быстрой навигации по коду
  • Поддерживает Windows, Linux и Mac OS X

Возможно, это не относится к GDB (потому что это IDE), но мои рекомендации будут KDevelop. Будучи довольно испорченным отладчиком Visual Studio (профессионально работающим много лет), я до сих пор чувствовал себя наиболее комфортно в KDevelop (как хобби дома, потому что я не мог позволить себе Visual Studio для личного использования - до выхода Express Edition).). Он выглядит "чем-то похожим" на Visual Studio по сравнению с другими IDE, с которыми я экспериментировал (включая Eclipse CDT), когда дело доходит до отладки пошагового, пошагового и т. Д. (Размещение точек останова немного неудобно, потому что я не не люблю использовать мышь при кодировании, но это не сложно).

Я работаю в TotalView, и у нас есть бесплатная для студентов версия нашего коммерческого отладчика Linux C++ (также Fortran, MPI и потоки).

http://www.roguewave.com/company/academic-programs.aspx

Стоит отметить, что у нас также есть сильно сниженные цены на лицензии "на уровне класса".

См. http://www.roguewave.com/products/totalview/resources/videos.aspx где вы найдете несколько быстрых видео, иллюстрирующих работу продукта.

Некоторые специфические особенности, которые TotalView имеет для C++:

  • Автоматическое преобразование классов коллекции STL во что-то разумное
  • "Погружение" на указатели, чтобы увидеть, на что указывают
  • Простое "приведение" указателей к массивам
  • Возможность просматривать одно поле данных в каждом экземпляре объекта в массиве объектов.
  • Установить точку останова на всех экземплярах класса

Крис Готбрат Менеджер по продукту TotalView Rogue Wave Software

Другие вопросы по тегам