Embedded C++ [] (Embedded C++), Antwort auf Frage, Seite 722390
https://www.purl.org/stefan_ram/pub/embedded_c++ (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram

AF: embedded C++ 

W[] – Worauf muss man bei Embedded-Anwendungen achten?

embedded ” heißt nur „Teil eines größeren Geräts“.

Es gibt kleine Systeme, wie etwa microcontroller, die teilweise kein Betriebsystem haben, nur wenig Speicher haben und langsam sind.

Hier ist eventuell C zu bevorzugen (keine Exceptions, Streams). Andererseits gibt es Fälle, in denen C++ schneller ist als C (z.B. sort).

Da exceptions und den Code vergrößern, sollten sie vermieden werden.

Umstritten ist dynamische Speicheranforderung, jedenfalls ist dynamische Speicherfreigabe und Wiederverwendung schwierig und wird oft vermieden.

Auch virtuelle Klassen und templates können Code vergrößern.

iostreams vergrößern Programm, müssen aber nicht verwendet werden

RTTI, dynamic_cast und die Behälterbibliothek können zu viel Speicherplatz beanspruchen und zu langsam sein. Außerdem unterstützt die Behälterbibliothek Speicherausrichtung schlecht.

Was zur Laufzeit Belastungen erzeugen kann:

Addresse (Beispiel): reinterpret_cast<void*>( 0xFFFF00D2 )

C-ABI-callbacks (Beispiel): extern "C" void f2( int );

Verhindern von Ausnahmewürfen in C-Rahmen mit catch

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. L'autore di questo testo è Stefan Ram. Tutti i diritti riservati. Questo sito è pubblicato da Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram722390 stefan_ram:722390 Embedded C++ Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd722390, slrprddef722390, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/embedded_c++