Май 08 2010

IAR и C++

IAR Embedded Workbench является хорошим компилятором с превосходной оптимизацией кода, когда речь идёт о языке C.
Как только к C добавляются два плюса, начинаются полные чудеса. Не работают операторы typeid и dynamic_cast. Это означает, что RTTI попросту не поддерживается. Самое интересное то, что редактор выделяет эти операторы, как нормальные ключевые слова языка!
Отладчик тоже не радует. Очень часто невозможно посмотреть текущие значения переменных-членов в режиме останова программы. Отладчик их просто не показывает.
Да и редактор кода недоделан под С++. Кнопочка внизу экрана, которая выводит список функций в открытом файле, не показывает имена классов. Т.е. если у вас 5 классов имеют функцию Func(), то в списке будет 5 раз повторяться Func() (а не Class1::Func(), Class2::Func() и т.п.). Понять, какая функция к какому классу относится, можно только телепатически.

  • Ghost

    Вообще родной отладчик IAR никогда не нравился за свою глючность и корявость. Использую для AVR их безплатную AVR Studio — очень приятная штука, идеально работает с JTAG ICE MKII (собрирать надо в формат ubrof8 (forced)).

  • arktur04

    Понятно. Но я сейчас пишу проект для ARM.