Embedded C ++ (EC ++) — это диалект языка программирования C++ для встраиваемых систем. Он был определён отраслевой группой, во главе с основными японскими производителями центральных процессоров (ЦП), включая NEC, Hitachi , Fujitsu и Toshiba, для устранения недостатков C++ для встроенных приложений. Целью работы является сохранение наиболее полезных объектно-ориентированных возможностей языка C++ с одновременным минимизацией размера кода при максимальной эффективности выполнения и упрощении построения компилятора. Официальный веб-сайт заявляет о своей цели: «предоставить программистам встроенных систем подмножество C++, которое среднему программисту C легко понять и использовать».EC++ Вопросы и ответы

Отличия от C++ Встраиваемый C++ исключает некоторые возможности C++. ВозможностьISO/ANSI C C++Встраиваемый C++Обработка исключенийМножественное наследованиеmutable , спецификатор класса храненияПространства имёнШаблоныДинамическая идентификация типа данных Приведения типовВиртуальное наследование Некоторые компиляторы, такие как компиляторы из Green Hills и IAR Systems, допускают включение определённых возможностей ISO/ANSI C++ в Embedded C++. IAR Systems называет это «Extended Embedded C++».

Компиляция Программа EC++ может быть скомпилирована любым компилятором C++. Однако компилятору, специфичному для EC++, легче проводить оптимизацию.

Компиляторы, специфичные для EC++, предоставляются такими компаниями, как: IAR Systems Freescale Semiconductor (дочерняя компания Motorola в 2004 году, которая приобрела Metrowerks в 1999 году) Tasking Software, часть Altium Limited Green Hills Software

Критика Язык был плохо принят многими опытными программистами C++. В частности, Бьёрн Страуструп говорит: «Насколько я знаю, EC ++ мёртв (2004), и если нет, то так и должно быть». Фактически, официальный сайт EC++ на английском языке не обновлялся с 2002 года. Тем не менее Apple, Inc. приняла в качестве эксклюзивного языка программирования ограниченное подмножество C++ (на основе Embedded C++) для создания всех драйверов устройств I/O Kit для операционных систем Apple Mac OS X и iOS популярного MacBook, iPhone. и продукты для iPad. Инженеры Apple считали, что исключения, множественное наследование, шаблоны и функции информации о типах среды выполнения в стандартном C++ либо недостаточны, либо недостаточно эффективны для использования в высокопроизводительном многопоточном ядре.

См. также Сравнение свободного программного обеспечения EDA Сравнение программного обеспечения EDA Электронная автоматизация проектирования (ЭДА)

Примечания

Ссылки

Предпосылки и цели разработки спецификации Embedded C++ Embedded C++ даёт более быстрый код, Джон Карбон (Embedded.com), 19 июня 1998 г. Создание ARM-систем Bare-Metal с помощью GNU: Часть 1. Начало работы, Миро Самек, Quantum Leaps, 26 июня 2007 г. Технический отчёт о производительности C ++, подготовленный рабочей группой 21 подкомитета ISO 22 Категория:Встраиваемые решения Категория:Языки описания аппаратуры Категория:Классовые языки программирования Категория:Википедия:Страницы с непроверенными переводами