Einführung
Ziel der Veranstaltung Vermittlung von Grundkenntnissen in C++ Solide Basis für anschließende Weiterentwicklung Fähigkeit, kleine Programme zu entwickeln Grundlagen zur Nutzung externer Bibliotheken
Teilnahmevoraussetzung Grundkenntnisse im Programmieren Variablen / Konstanten / Schleifen und Bedingungen / Methoden und Funktionen / Klassen Kenntnis mindestens einer weiteren Programmiersprache (z.B. Java) Zugang zum Informatiknetz
Umfang der Veranstaltung mittwochs 15:15 – 16:45 Windowspool Johannesgasse 26 (3-01) 15 Präsenzveranstaltungen Übungsaufgaben und Abschlussprojekt Scheinvoraussetzung: Präsentation und Erklärung des Quelltextes des Abschlussprojektes
Abrechnung Master-Neu: Seminar im Rahmen des Modules „Software aus Komponenten“ Bachelor/Master-Alt, Diplomstudiengang: 4SWS uniinternes Praktikum Bachelor-Neu: leider keine Anrechnung möglich
Inhalt Die IDE Grundstrukturen (Variablen, Operatoren, Pointer …) Objektorientierte Programmierung mit Klassen Spezielle Funktionalitäten (Templates, Singletons, Mehrfachvererbung) Die C++ Standard-Library (STL) Ein (sehr einfaches) Spiel mit dem Simple DirectMedia Layer (SDL)
C++ Teil 1: Die IDE Visual Studio 2005 Professional
Erstellen eines neuen Projektes File > New > Projekt…
Hinzufügen einer Quellcodedatei Project > Add New Element …
Hello World! #include using namespace std; // Hauptprogramm / Einstiegspunkt int main() { cout << "Hello World!\n"; return 0; }
#include # - Präprozessor-Direktive wird vor dem eigentlichen Kompilieren ausgeführt include – Einbindung einer vorhandenen Quelltextdatei - input / output Datenstrom (für Befehl cout) <> - Microsoft Visual Studio 8\VC\include ““ – aktuelles Arbeitsverzeichnis
using namespace std; Namespaces zur Vermeidung von Doppeldeutigkeiten Namensbereich std alle Funktionen und Variablen aus iostream liegen in diesem Namensbereich
int main() Einsprungpunkt des Programmes C++ ist case-sensitive! liefert einen integer Wert zurück hier leere Parameterliste aber Möglichkeit, Parameter zu übergeben
cout << "Hello World!\n"; cout: Ausgabe von Text in die Konsole wird in iostream definiert Gegenstück: cin – Eingabe von Text über die Konsole <<: Umleitungsoperator RHS wird an LHS weitergeleitet Gegenstück: >> - LHS an RHS ; - jede Befehlszeile mit Semikolon abschließen
Escape-Zeichen ZeichenBedeutung \nCarriage Return (Zeilenumbruch) \bCursor ein Zeichen zurück \rCursor zum Zeilenanfang zurück \tTabulator \"Ausführungszeichen einfügen \\Backslash einfügen \xHexadezimaler Zeichencode
Vom Quellcode zur ausführbaren Datei 1. Abarbeiten der Präprozessordirektiven Ergebnis: temporäre Quellcodedatei incl. eingebundene Dateien 2. Kompilieren der temporären Datei Ergebnis: eine oder mehrere Objektdateien in Assembler (Bruchstücke) 3. Linken der Bruchstücke Ergebnis: Ausführbare Datei
Quellcodeausführung in VS 2005 Kompilieren, Linken und Ausführen mit F5 (Strg+F5 ohne debuggen) Schrittweise Ausführung mit F10 (Prozedurschritt) oder F11 (Einzelschritt) Anhalten der Programmausführung mittels Haltepunkt F9 (incl. bedingte Haltepunkte) Kompiliermodus Debug und Release Ergebnis in BuildLog.htm
Aufgabe Einfaches Begrüßungsprogramm