Skip to main content

C++ als nicht-objektorientierte Spracherweiterung von C

C++ als nicht-objektorientierte Sprach-erweiterung von C

Zielgruppe

Softwareentwickler/innen von Embedded-C-Applikationen, die die Vorteile von C++ ohne Verwendung der objektorientierten Programmierung nutzen möchten.

Vorkenntnisse

Programmiererfahrung in C.

Dauer

1 Tag

Kursziel

Der Umstieg von C auf C++ wird üblicherweise gemacht, um von den Vorteilen der objektorientierten Programmierung (OOP) profitieren zu können. Die Transformation einer traditionell entwickelten C-Applikation in ein objektorientiertes C++-Programm ist aufgrund der prinzipiell anderen Art der Programmierung in der Regel sehr aufwändig und führt zu einer völlig anderen Codestruktur. Aus diesem Grund wird C++ oft nur in neuen Projekten eingesetzt.

Allerdings haben viele Spracheigenschaften von C++ gar nichts mit OOP zu tun. Aufgrund der Rückwärtskompatibilität von C++ können diese Spracheigenschaften deshalb auch in bereits existierenden C-Anwendungen eingesetzt werden, ohne deren prinzipielle Codestruktur ändern zu müssen, und wirken somit wie eine Spracherweiterung von C.

Der Kurs stellt diese Spracheigenschaften vor und zeigt auch, wie C- und C++-Module zusammenarbeiten können, um z.B. Programmteile, die (noch) nicht umgestellt werden sollen, weiter nutzen zu können.

Durch die Verwendung von C++ steht nicht nur ein größerer Sprachumfang als in C zur Verfügung, sondern bietet sich auch die Möglichkeit, gefährliche Sprachmittel der C-Sprache durch sicherere C++-Alternativen zu ersetzen. Zusammen mit der höheren Typsicherheit des Compilers führt dies dazu, dass mehr Fehler bereits zum Übersetzungszeitpunkt erkannt werden können und somit weniger Zeit für die Fehlersuche benötigt wird.


Inhalt

Einführung

  • Entstehung von C++
  • Entwurfsziele von C++
  • Beispiele für die Effizienz von C++
  • Generelle Richtlinien

Nicht-Objektorientierte Sprachelemente

  • Die using-Anweisung
  • Datentyp bool
  • Aufzählungsdatentypen
  • Referenzen
  • Bereichsbasierte for-Schleife
  • Funktionsüberladung
  • Nutzung von C-Modulen aus C++
  • Vorbelegungsparameter
  • Namensbereiche
  • Dynamische Speicherverwaltung
  • Nullpointer
  • Überladung von Operatoren
  • Cast-Operatoren

Der Kursinhalt entspricht nicht ganz dem, was Sie suchen?


What customers say:

"Well-structured from a teaching perspective, and executed with absolute precision!"
"Excellent course instruction!"
"Pleasantly calm, knowledgeable, and open to questions."
"I really liked the explanation of the background."
"With 'Design Patterns for Embedded Systems,' Mr. Nieratschker has developed a highly informative, interactive, and engaging training course. Thanks to the puzzle questions that build on one another, the course feels like a mental scavenger hunt: the Da Vinci Code for programmers."
"I've never taken a course that was so perfectly structured!!! SKT++."
"Clear, visual explanations and a lot of patience when it comes to practical applications."
"A must-read for every object-oriented programmer!"
"A very good approach to deriving the patterns."
"All participants were 'brought up to speed,' since their levels of knowledge varied greatly."
"It really helped me make progress."
"Very good, practical examples."
"The instructor knows how to engage the students."
"Complex topics explained in a way that's super easy to understand."
"Knowledge of the instructor far above the trained theme!"
"The thing I liked most was the instructor's teaching skills!"
"The things I liked most were the teacher's clarity both in presentation and spoken English."
"Examples from real world, not like e.g. wikipedia."
"We were 'forced' to think ... Our attention was up all the time, which was great."
"What I liked in particular was the deep knowledge of the instructor and the sense of humor."
"What I liked in particular was the way we discovered patterns."

SKT Nieratschker · Karl Nieratschker · Joseph-Maria-Lutz-Str. 7 · D-85293 Reichertshausen · Tel. +49 (0) 8441 490210 · office@skt-nieratschker.com