Блог пользователя Ramzes2

Автор Ramzes2, 13 лет назад, По-русски

Существует ли среда разработки с нормальным дебагером, который дружит с контейнерами stl?
Пробовал code::blocks, NetBeans - не то. Или я что-то не так делаю?

  • Проголосовать: нравится
  • +15
  • Проголосовать: не нравится

13 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
В QT Creator это как бы есть. Но не очень удобно.
Говорят что в Эклипсе если использовать стандартный отладчик, а не DSF, то тоже есть. Может в Индиго и в DSF добавили.

13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Попробуй Qt Creator, по-моему все удобно.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Это как с пушки по воробьям. Правда с Visual Студию то же самое, удобство важнее.
    Правда я так и не понял, как правильно создать проект без Qt-шных примочек.
    • 13 лет назад, # ^ |
        Проголосовать: нравится +3 Проголосовать: не нравится
      QtCreator -> File (Файл) -> New File or Project (Новый файл или проект -> Консольное приложение Qt -> Выбрать Далее Далее.

      В редакторе будет небольшой исходник его можно удалить и писать программу на обычном C/C++.
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Или я что-то не так делаю?

Думаю, всё нормально, просто вопрос (не)привычки! К сказанному выше коллегами добавить в общем нечего, хотя да, есть любители писать в mcedit, vi, emacs, nano... Пробовал и эти варианты, но проголосую за eclipse - в общем, хоть я его и недолюбливаю, но штука удобная и могучая. Пользовался им и в винде и в линуксе, и под специфичные платформы в т.ч. ;-)
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Про ed забыли?
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Нет, но я лично им пользовался только для редактирования скриптов и файлов данных на очень маленьких платформах (типа 64-127Mб флэша и оперативки 8-32Мб) - так что компилятор там всё равно не существовал как класс. :D
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Ещё можно писать cat-ом.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Поставить emacs в один ряд через запятую с nano - это что-то :)
13 лет назад, # |
  Проголосовать: нравится +2 Проголосовать: не нравится
Возможно стоит заменить в названии темы слово "IDE" на "дебагер", чтобы не обманывать ожидания открывающих тему
13 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Qt creator отлично умеет отлаживать stl-контейнеры(во всяком случае, самые частоиспользуемые вроде vector, set, map)
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Там другая крайность -- или я косорукий, или как показать содержимое строки в отладчике? :о
    • 13 лет назад, # ^ |
      Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

      Проверил, все хорошо отображается и массив char'ов, и string'и (также можно добавлять в watch). Возможно у вас старая версия QtCreator'a.

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Совсем простые примеры - да, показывает.
    Но на следующем коде уже не работает:
        string s1 = "blabla";
        string s2 = "test";
        string s3 = "something";

        map<string, pair<int, int> > M;

        M[s1] = make_pair(13, 23);
        M[s2] = make_pair(34, 35);
        M[s3] = make_pair(434, 3445);
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Поставил я QT, думал все, свершилось чудо, ан нет.. Не работает отладчик. При запуске отладки пишет что то вроде 'ptrace: операция не позволяется' и тишина, даже до брикпоинта не доходит. Стоит Ubuntu 11.04. Где то читал, что в последних версиях убунты есть ограничение на использование ptrace. Может из-за этого
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Вообще бывают какие-то питоновские финтилючки под gdb 7.0, которые добавляют возможность нормально показывать stl-контейнеры. Кажется, оно называется в стили "lib_stdcxx pretty printers". Если их врубить, то можно и в эклипсе смотреть содержимое всего что нужно.