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

<p>я преподаю новичкам "облегченный" курс программирования на c++ ("облегченный" означает отсутствие указателей, никаких классов, просто старый c, плюс ссылки и строку и векторы stl). у студентов нет предыдущего опыта программирования, поэтому я считаю, что использование интерактивного отладчика поможет им понять ход программы, переменные и рекурсию.</p><p>курс преподается в linux. научить их использовать gdb просто излишне (они не будут использовать и понимать большинство функций). мне просто нужно что-то простое, но простое в использовании: чтобы увидеть, в какой строке находится программа, что находится в стеке (локальные переменные, предыдущие вызовы и т.д.). я похож на старый turbo pascal, отладчик turbo c++ borland или отладчик visual studio.</p><p>спасибо,</p>

<p> <a href="http://www.gnu.org/software/ddd/">ddd</a> это графический интерфейс для gdb, который довольно хороший. одним из недостатков является классический интерфейс x, но, кажется, я помню, что он довольно интуитивно понятен.</p>

<p>вы можете попробовать использовать <a href="http://sources.redhat.com/insight">insight</a> графический интерфейс для gdb, написанный red hat. если вы используете среду рабочего стола gnome, вы также можете попробовать <a href="http://projects.gnome.org/nemiver/">nemiver</a> .</p>

<p>вы можете проверить eclipse cdt. он предоставляет c/c++ ide, который работает на нескольких платформах (например, windows, linux, mac os x и т.д.). отладка в eclipse cdt сравнима с использованием других инструментов, таких как visual studio.</p><p>вы можете проверить <a href="http://download.eclipse.org/tools/cdt/docs/tutorials/debug\_tutorial/cdt\_w\_debug.htm">учебник по eclipse cdt debug</a> , который также включает в себя несколько скриншотов.</p>

<p> <a href="http://qt.nokia.com/products/developer-tools">qt creator</a> , помимо других полезностей, также имеет хорошую интеграцию отладчика для cdb, gdb и отладчика symnbian на всех поддерживаемых платформах. вам не нужно использовать qt для использования ide qt creator, равно как и qmake - он также имеет интеграцию с cmake, хотя qmake очень прост в использовании.</p><p>возможно, вы захотите использовать qt creator в качестве ide для обучения программированию, подумайте, что у него есть несколько полезных функций:</p><ul> <li>очень умный и продвинутый редактор c++</li> <li>инструменты управления проектами и сборками</li> <li>интеграция qmake и cmake</li> <li>интегрированная контекстно-зависимая справочная система</li> <li>отличный визуальный отладчик (cdb, gdb и symbian)</li> <li>поддерживает gcc и vc++</li> <li>инструменты быстрой навигации по коду</li> <li>поддерживает windows, linux и mac os x</li> </ul>

<p>возможно, это не относится к gdb (потому что это ide), но мои рекомендации будут <a href="http://www.kdevelop.org/">kdevelop</a> . будучи довольно испорченным отладчиком visual studio (профессионально работающим много лет), я до сих пор чувствовал себя наиболее комфортно в kdevelop (как хобби дома, потому что не мог позволить себе visual studio для личного использования - до выхода express edition). ). он выглядит "чем-то похожим" на visual studio по сравнению с другими ide, с которыми я экспериментировал (включая eclipse cdt), когда дело доходит до отладки пошагового, пошагового и т.д. (установка точек останова немного неудобна, потому что я не не люблю использовать мышь при кодировании, но это не сложно).</p>

<p>я работаю для <a href="http://www.roguewave.com/products/totalview.aspx">totalview</a> , и у нас есть бесплатная версия для нашего коммерческого отладчика linux c++ (также fortran, mpi и потоки).</p><p> <a href="http://www.roguewave.com/company/academic-programs.aspx">http://www.roguewave.com/company/academic-programs.aspx</a> </p><p>стоит отметить, что у нас также есть сильно сниженные цены на лицензии "на уровне класса".</p><p>см. <a href="http://www.roguewave.com/products/totalview/resources/videos.aspx">http://www.roguewave.com/products/totalview/resources/videos.aspx</a> несколько быстрых видеороликов, иллюстрирующих работу продукта.</p><p>некоторые специфические особенности, которые totalview имеет для c++:</p><ul> <li>автоматическое преобразование классов коллекции stl во что-то разумное</li> <li>"погружение" на указатели, чтобы увидеть, на что указывают</li> <li>простое "приведение" указателей к массивам</li> <li>возможность просматривать одно поле данных в каждом экземпляре объекта в массиве объектов.</li> <li>установить точку останова на всех экземплярах класса</li> </ul><p>крис готбрат менеджер по продукту totalview rogue wave software</p>