Objektorientierte Programmierung für µC

Gast #59389
Hallo!

Ne Frage: Kann man µCs in C auch objektorientiert programmieren? Denke
da speziell an Verwendung eines Datenpaketobjektes für ein
Kommunikationsprotokoll und einer Queue (FIFO-Objekt-Kette) für die
Abarbeitung von eingegangen Paketen...

Ich denk zwar nicht, wegen dem realtiv geringen RAM, aber wer weiß?

mfg euer <b>Weinga-Unity</b>
Gast #59390
PS: Die Frage stell ich auch deshalb, da ich in C sowieso nochnie
objektorientiert programmiert habe. (Bis jetzt nur Borland-Delphi und
JAVA)
Gast #59391
Grundsätzlich möglich wäre das sicherlich (ggf. mit zusätzlichem
externen RAM), die Frage ist nur, ob das sinnvoll wäre. Microcontroller
wurden ja gerade entwickelt, um möglichst kostengünstig kleinere
Aufgaben zu erledigen. Objektorientierte Sprachen erzeugen eine ganze
Menge Overhead, die letztlich zu höheren Kosten führen als die
Aufgabenstellung zwingend erfordert, so dass bei MC-Projekten IMO die
Nachteile die eventuellen Vorteile überwiegen. Bei großen Anwendungen
auf dem PC sieht das natürlich ganz anders aus.

Gruß, Frank
Gast #59392
Hi,
der GCC kann auch C++. Die Einbindung von new und delete und solchen
Dingen ist halt etwas kritischer. Aber einfache Objekte machen Sinn. Ob
das auf einem 2313 sein muß, ist zweifelhaft.
Auf grösseren Controllern sieht das anders aus.
Ich verwende auch auf den kleinen Controllern C++. Halt wegen false und
true, der besseren Typüberprüfung usw.

Oryx
Gast #59393
Hallo!

@Oryx: Klingt interessant! Hab leider mit C bzw. C++ nochnie
objektorientiert programmiert. Vielleicht kannst ja, wennst mal Zeit
hast, ein kleines Beispiel hier posten. z.B. ein Point-Objekt, wo x und
y Werte gespeichert werden. Bzw. eine boolean p.compareTo(x,y) funktion
noch...

mfg W.U.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.