Integrovaný C ++ - Embedded C++
Integrovaný C ++ (EC ++) je dialekt z C ++ programovací jazyk pro vestavěné systémy. To bylo definováno průmyslovou skupinou vedenou významnými Japonci centrální procesorová jednotka (CPU) výrobců, včetně NEC, Hitachi, Fujitsu, a Toshiba, k řešení nedostatků C ++ pro vestavěné aplikace. Cíl úsilí[1] je zachovat to nejužitečnější objektově orientovaný funkce jazyka C ++ a přitom minimalizovat velikost kódu při maximalizaci efektivity provádění a tvorby překladač konstrukce jednodušší. Oficiální web uvádí cíl jako „poskytnout programátorům vestavěných systémů podmnožinu C ++, kterou průměrný programátor C snadno pochopí a použije“.[2]
Rozdíly od C ++
Integrovaný C ++ vylučuje některé funkce C ++.
Vlastnosti | ISO / ANSI C C ++ | Integrovaný C ++ |
---|---|---|
Zpracování výjimek | ![]() | ![]() |
Vícenásobné dědictví | ![]() | ![]() |
proměnlivý , a specifikátor třídy úložiště | ![]() | ![]() |
Jmenné prostory | ![]() | ![]() |
Šablony | ![]() | ![]() |
Informace o typu běhu (psí typ ) | ![]() | ![]() |
Stylové obsazení ( static_cast , dynamic_cast , reinterpret_cast , a const_cast ) | ![]() | ![]() |
Virtuální základní třídy | ![]() | ![]() |
Někteří kompilátoři, například z Green Hills a IAR Systems, umožňují povolit určité funkce ISO / ANSI C ++ v Embedded C ++. Systémy IAR nazývá to „Extended Embedded C ++“.[3]
Sestavení
Program EC ++ lze zkompilovat s libovolným překladačem C ++. Ale kompilátor specifický pro EC ++ může mít snazší čas provádět optimalizaci.
Překladače specifické pro EC ++ poskytují společnosti, jako jsou:
- Systémy IAR[4]
- Freescale Semiconductor, (spin-off z Motorola v roce 2004, který získal Metrowerks v roce 1999)
- Úkolový software,[5] část Altium Limited
- Software Green Hills[6]
Kritika
![]() | Tento článek je Kritika nebo Kontroverze sekce může ohrozit článek neutrální hledisko subjektu.Květen 2018) ( |
Jazyk měl špatný příjem u mnoha zkušených programátorů v C ++. Zejména, Bjarne Stroustrup říká: „Pokud je mi známo, EC ++ je mrtvý (2004), a pokud tomu tak není, mělo by to být.“[7] Oficiální anglický web EC ++ ve skutečnosti nebyl aktualizován od roku 2002. Přesto byla přijata omezená podmnožina C ++ (založená na Embedded C ++) Apple Inc. jako exkluzivní programovací jazyk k vytvoření všech I / O Kit ovladače zařízení pro operační systémy Apple MacOS, iPadOS a iOS populárních produktů Macintosh, iPhone a iPad.[8] Inženýři společnosti Apple cítili, že výjimky, vícenásobná dědičnost, šablony a informace o typu běhového prostředí standardního C ++ jsou buď nedostatečné, nebo nedostatečně účinné pro použití ve vysoce výkonném vícevláknovém jádře.[9]
Viz také
Reference
- ^ „Odůvodnění EC ++“.
- ^ EC ++ Otázky a odpovědi
- ^ „Embedded a Extended Embedded C ++“. Archivovány od originál dne 21. května 2013. Citováno 9. prosince 2012.
- ^ „IAR Systems - Compilers and debuggers“. Web společnosti IAR Systems.
- ^ „Integrovaná technologie kompilátoru C ++“. Úkolový web. Archivovány od originál dne 01.01.2009.
- ^ „Green Hills Optimizing C / C ++ / EC ++ Compilers“. Web společnosti Green Hills Software. Archivovány od originál dne 2008-10-25.
- ^ „Co si myslíte o EC ++?“. Bjarne Stroustrup FAQ.
- ^ „Co je Mac OS X?“. Amit Singh.
- ^ "Libkern C ++ Runtime". Pokyny k návrhu ovladače zařízení IOKit.
externí odkazy
- Oficiální webové stránky
- Pozadí a cíle vývoje specifikace vestavěných C ++
- Integrovaný C ++ přináší rychlejší menší kód, John Carbone (Embedded.com), 19. června 1998
- Budování bare-metal ARM systémů s GNU: Část 1 - Začínáme, Miro Samek, Quantum Leaps, 26. června 2007
- Technická zpráva o výkonu C ++ WG 21 subkomise ISO SC 22