Nano Hash - криптовалюты, майнинг, программирование

Отображение классов STL в DDD

Я пишу компилятор C ++ и использую g ++ для компиляции исходного кода и gdb в качестве отладчика. Я слишком много использовал классы STL, такие как список, вектор. Я начал использовать DDD в качестве графического интерфейса для gdb. Но он не показывает мне классы stl должным образом. Может ли кто-нибудь предложить мне, как аккуратно отображать содержимое stl в DDD?

29.11.2011

  • Возможный дубликат: stackoverflow.com/questions/1610906/ 29.11.2011
  • Возможно, это поможет вам: sourceware.org/gdb/wiki/STLSupport 29.11.2011
  • Я могу использовать отладчик командной строки и получить красивую печать с помощью файла .gdbinit. Но я не могу получить то же самое в DDD. 29.11.2011
  • @Chethan Ravindranath: в этом случае название вашего вопроса вводит в заблуждение. В заголовке утверждается, что проблема связана с GDB, а в вопросе и в вашем комментарии говорится, что не для GDB, а для DDD. 29.11.2011
  • Ой! Извини за это! Отредактировал заголовок, чтобы не вводить в заблуждение ... 29.11.2011

Ответы:


1

Используйте этот файл в качестве своего .gdbinit, и все должно быть готово, так как DDD - это только интерфейс gdb.

29.11.2011
  • Раньше я использовал тот же файл инициализации, и командная строка gdb отлично работает с этим, но DDD, похоже, не очень хорошо печатает с использованием этого файла. 29.11.2011
  • Я не уверен, но если вы напишете, например, pvector vec в командной строке ddd, он распечатает значения точно так, как должно. 29.11.2011
  • Ага. pvector и plist работают нормально, но у ddd есть опция display, где при двойном щелчке по указателю отображается значение, указанное указателем. Точно так же, когда я дважды щелкаю векторную переменную, она показывает вектор, но не аккуратно. 29.11.2011
  • Просто смени свой отладчик, если хочешь большего, чем есть. Есть много лучших интерфейсов gdb. У KDevelop хорошая интеграция с gdb, у CodeLite она тоже есть, список можно продолжить. 29.11.2011
  • Желаю приятного кодирования с помощью KDevelop :). 29.11.2011

  • 2

    Правка -> Настройки GDB ... Включить Prettyprinting структур

    19.02.2015

    3
    1. следуйте советам stl-views, чтобы GDB мог отображать stls;
    2. удалите файл инициализации ddd в '~ / .ddd / init' и снова откройте ddd, наслаждайтесь!
    22.03.2021
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..