Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

C++ Kurs: Objektorientierte Programmierung mit C++ - Live-Online-Seminar

Moderne, qualitativ hochwertige und komplexe Softwaresysteme zu entwickeln kostet Zeit und Geld. Beides lässt sich mithilfe objektorientierter Techniken auf Dauer einsparen; zudem kann qualitativ hochwertigere Software entwickelt werden.

  • Inhalt
     
  • Ziele -
    Ihr Nutzen
  • Teilnehmer
     
  • Voraussetzungen
     

In diesem C++ Kurs lernen Sie in kleinen Schritten, versetzt mit vielen Übungen, die Syntax der Programmiersprache C++ von Grund auf kennen.

Auch der Umstieg von der prozeduralen Programmierung in die andere Denk- und Arbeitsweise der objektorientierten Programmierung wird Ihnen durch die vielen praktischen Übungen im C++ Kurs erleichtert.

In einem kurzen Überblick werden auch weiterführende Themen, wie Templates, die STL (Standard Template Library), Exceptions und Container, vorgestellt.

Der C++ Kurs richtet sich an Software-Entwickler, die C++ unter Verwendung objektorientierter Konzepte einsetzen wollen.

Solide C-Kenntnisse

Einführung in C++

  • Historie
  • Unterschiede und Gemeinsamkeiten von C und C++
  • Vorteile von C++
  • Welche Vorteile bringt die objektorientierte Entwicklung?

Programmaufbau

  • Neue Sprachmittel
  • Überladen von Funktionen
  • Ein- und Ausgabe mit Streams
  • Demonstrationen
  • Übung: Überladen von Funktionen

Datentypen

  • Neue Datentypen
  • Pointer und Referenzen
  • Neuerungen aus C++ 11
  • Dynamische Speicherverwaltung
  • Smart-Pointer
  • Demonstrationen

Kontrollstrukturen

  • Was wurde aus C übernommen, was ist neu?
  • Automatische for-Schleife
  • Exceptions
  • Demonstrationen
  • Übung: Anwenden von Kontrollstrukturen

Operatoren

  • Überblick über die Operatoren
  • Operatorüberladung
  • Umlenkungsoperatoren für die Ein- und Ausgabe
  • Demonstrationen
  • Übung: Überladen von Operatoren

Klassen

  • Aufbau von Klassen
  • Objekterzeugung
  • Konstruktor und Destruktor
  • Kapselung von Daten und Methoden
  • Zugriffsrechte auf Klassenmember
  • Der this-Pointer
  • Überladen von Methoden
  • Statische Daten und Methoden
  • Konstante Methoden
  • Unterschied zwischen Struktur und Klasse
  • Namensräume
  • Demonstrationen
  • Übung: Implementieren eines Zählers

Initialisierung und Freigabe von Objekten

  • Umgang mit Konstruktoren
  • Universelle Initialisierung
  • Initialisierung von eingebetteten Objekten
  • Konstante Daten und deren Initialisierung
  • Demonstrationen
  • Übung: Implementieren und Initialisieren eines eingebetteten Objektes

Spezielle Memberfunktionen

  • Explizite und gelöschte Konstruktoren
  • Operator als Memberfunktion
  • Spezielle Syntaxformen bei der Überladung von Typecast und Inkrement-/ Dekrement-Operatoren
  • Move-Semantiken
  • Demonstrationen
  • Übung: Implementierung von Operatoren als Memberfunktion

Vererbung

  • C++ Implementierung
  • Wiederverwendung von Code durch Vererbung
  • Auswirkung der Zugriffsrechte in Klassenhierarchien
  • Verhalten von Konstruktoren/Destruktoren in Klassenhierarchien
  • Demonstrationen

Virtuelle Methoden

  • Überschreiben von Methoden der Basisklasse
  • Die Schlüsselwörter override und final
  • Polymorphie
  • Abstrakte Klassen
  • Abstrakte Methoden
  • Interfaces
  • Demonstrationen
  • Übung: Erweitern des Zählers durch eine abgeleitete Klasse

Zugriffskontrolle mit friend

  • Das Schlüsselwort friend
  • "Befreundete" Klassen, Methoden und Funktionen
  • Wie wirkt sich friend bei Vererbung aus?
  • Demonstrationen

Streams

  • Überblick über die Stream-Klassen
  • Nutzung der Streams für die Ausgabe in Files und Strings
  • Manipulatoren für die Anpassung der Ausgabe
  • Überladen von Stream-Operatoren
  • Demonstrationen
  • Übung: Stream-Operatoren für die Zähler-Klasse

STL (Standard Template Library)

  • Anwenden von Template-Klassen
  • Die C++ Cast-Operatoren
  • Container
  • Iteratoren
  • Algorithmen
  • Smart Pointer
  • Demonstrationen
  • Übung: Nutzung von STL-Containern

Praktische Übungen im C++ Kurs

  • Überladen von Funktionen
  • Anwendung von Kontrollstrukturen
  • Operatorüberladung
  • Implementierung von Klassen
  • Konstruktorüberladung, Initialisierung eingebetteter Objekte
  • Operatoren als Memberfunktion
  • Polymorphie: Vererbung und virtuelle Methoden
  • Streamausgabe von eigenen Klassen
  • Nutzung der STL
  • Die umfangreichen Übungen werden mit dem Microsoft Visual Studio durchgeführt.

MicroConsult PLUS

  • Die Teilnehmer erhalten einen USB-Stick, um die Kopien der Übungsverzeichnisse und Lösungsbeispiele für alle Übungsaufgaben mitzunehmen.

Im Preis enthalten:
Trainingsdokumentation, Ihr Zertifikat sowie ggf. erforderliche Ziel-HW o.ä.


ALL INCLUSIVE!

Spätestens 3 Wochen vor Trainingsbeginn erhalten Sie eine verbindliche Durchführungsbestätigung.

Einige Tage vor dem Live-Online-Training erhalten Sie von uns E-Mails mit …

  • ausführlichen Infos rund um Ihr Training
  • Ihre Schulungsunterlagen (Download-Link)
  • einer Einladung zu einer optionalen Probesession mit dem Trainer
  • einer Einladung für jeden Schulungstag, mit Link und Zugangsdaten

Ggf. erforderliche Übungs-HW senden wir Ihnen rechtzeitig vorab zu.


ABLAUF

Live-Online-Training

Termin Preis *Dauer
22.02. – 25.02.20212.200,00 €4 Tage 
03.05. – 06.05.20212.200,00 €4 Tage 
Anmeldecode: OL-C++
* Preis je Teilnehmer, in Euro zzgl. USt.


> Download Blanko-Anmeldeformular
> Trainingsbeschreibung als PDF

C++ Kurs: Objektorientierte Programmierung mit C++ - Live-Online-Seminar

Inhalt

Einführung in C++

  • Historie
  • Unterschiede und Gemeinsamkeiten von C und C++
  • Vorteile von C++
  • Welche Vorteile bringt die objektorientierte Entwicklung?

Programmaufbau

  • Neue Sprachmittel
  • Überladen von Funktionen
  • Ein- und Ausgabe mit Streams
  • Demonstrationen
  • Übung: Überladen von Funktionen

Datentypen

  • Neue Datentypen
  • Pointer und Referenzen
  • Neuerungen aus C++ 11
  • Dynamische Speicherverwaltung
  • Smart-Pointer
  • Demonstrationen

Kontrollstrukturen

  • Was wurde aus C übernommen, was ist neu?
  • Automatische for-Schleife
  • Exceptions
  • Demonstrationen
  • Übung: Anwenden von Kontrollstrukturen

Operatoren

  • Überblick über die Operatoren
  • Operatorüberladung
  • Umlenkungsoperatoren für die Ein- und Ausgabe
  • Demonstrationen
  • Übung: Überladen von Operatoren

Klassen

  • Aufbau von Klassen
  • Objekterzeugung
  • Konstruktor und Destruktor
  • Kapselung von Daten und Methoden
  • Zugriffsrechte auf Klassenmember
  • Der this-Pointer
  • Überladen von Methoden
  • Statische Daten und Methoden
  • Konstante Methoden
  • Unterschied zwischen Struktur und Klasse
  • Namensräume
  • Demonstrationen
  • Übung: Implementieren eines Zählers

Initialisierung und Freigabe von Objekten

  • Umgang mit Konstruktoren
  • Universelle Initialisierung
  • Initialisierung von eingebetteten Objekten
  • Konstante Daten und deren Initialisierung
  • Demonstrationen
  • Übung: Implementieren und Initialisieren eines eingebetteten Objektes

Spezielle Memberfunktionen

  • Explizite und gelöschte Konstruktoren
  • Operator als Memberfunktion
  • Spezielle Syntaxformen bei der Überladung von Typecast und Inkrement-/ Dekrement-Operatoren
  • Move-Semantiken
  • Demonstrationen
  • Übung: Implementierung von Operatoren als Memberfunktion

Vererbung

  • C++ Implementierung
  • Wiederverwendung von Code durch Vererbung
  • Auswirkung der Zugriffsrechte in Klassenhierarchien
  • Verhalten von Konstruktoren/Destruktoren in Klassenhierarchien
  • Demonstrationen

Virtuelle Methoden

  • Überschreiben von Methoden der Basisklasse
  • Die Schlüsselwörter override und final
  • Polymorphie
  • Abstrakte Klassen
  • Abstrakte Methoden
  • Interfaces
  • Demonstrationen
  • Übung: Erweitern des Zählers durch eine abgeleitete Klasse

Zugriffskontrolle mit friend

  • Das Schlüsselwort friend
  • "Befreundete" Klassen, Methoden und Funktionen
  • Wie wirkt sich friend bei Vererbung aus?
  • Demonstrationen

Streams

  • Überblick über die Stream-Klassen
  • Nutzung der Streams für die Ausgabe in Files und Strings
  • Manipulatoren für die Anpassung der Ausgabe
  • Überladen von Stream-Operatoren
  • Demonstrationen
  • Übung: Stream-Operatoren für die Zähler-Klasse

STL (Standard Template Library)

  • Anwenden von Template-Klassen
  • Die C++ Cast-Operatoren
  • Container
  • Iteratoren
  • Algorithmen
  • Smart Pointer
  • Demonstrationen
  • Übung: Nutzung von STL-Containern

Praktische Übungen im C++ Kurs

  • Überladen von Funktionen
  • Anwendung von Kontrollstrukturen
  • Operatorüberladung
  • Implementierung von Klassen
  • Konstruktorüberladung, Initialisierung eingebetteter Objekte
  • Operatoren als Memberfunktion
  • Polymorphie: Vererbung und virtuelle Methoden
  • Streamausgabe von eigenen Klassen
  • Nutzung der STL
  • Die umfangreichen Übungen werden mit dem Microsoft Visual Studio durchgeführt.

MicroConsult PLUS

  • Die Teilnehmer erhalten einen USB-Stick, um die Kopien der Übungsverzeichnisse und Lösungsbeispiele für alle Übungsaufgaben mitzunehmen.