C++ - Einführung in die Programmiersprache Leibniz Universität IT Services | Anja Aue Handbücher des RRZN C++ für C-Programmierer C und C++ für Java-Programmierer C++ - Einführung | 05.04.16 Seite 2 Bücher Bjarne Stroustrup: Programming. Principles and Practice Using C++. Addision Wesley. 2. Auflage. Jürgen Wolf: Grundkurs C++: C++-Programmierung verständlich erklärt. Rheinwerk Computing. 3. Auflage. Dieter Bär: Schrödinger programmiert C++: Jetzt mit C++ 14 und Syntax-Highlighting. Rheinwerk Computing. 2. Auflage. C++ - Einführung | 05.04.16 Seite 3 Bücher zur Standardbibliothek Rainer Grimm: C++-Standardbibliothek - kurz & gut. O'Reilly. 1. Auflage. C++ - Einführung | 05.04.16 Seite 4 PDF-Dokumente im Netz TU Braunschweig: https://www.tu-braunschweig.de/MedienDB/statik/software/einfuehrung_in_cpp.pdf Universität Graz: http://www.uni-graz.at/~haasegu/ Lectures/Kurs-C/Script/html/script_programmieren.pdf DHBW Stuttgart: http://wwwlehre.dhbwstuttgart.de/~kfg/cpp/cpp.pdf C++ - Einführung | 05.04.16 Seite 5 Referenzen im Web http://www.stroustrup.com/C++.html http://www.cplusplus.com/doc/tutorial/ http://www.cprogramming.com/tutorial.html http://www.learncpp.com/ http://www.etp.physik.unimuenchen.de/kurs/Computing/ckurs/cxx.html http://www.cpp-tutor.de/cpp/hinweise.html C++ - Einführung | 05.04.16 Seite 6 C++- Standard und Standardbiblothek http://www.open-std.org/jtc1/sc22/wg21/ http://gcc.gnu.org/onlinedocs/libstdc++/ http://www.cplusplus.com/reference/clibrary/ http://en.cppreference.com/w/ https://www.sgi.com/tech/stl/ https://de.wikibooks.org/wiki/C%2B%2B-Programmierung/ _Die_STL C++ - Einführung | 05.04.16 Seite 7 Entwicklungsumgebungen (IDE) NetBeans (http://www.netbeans.org/) Code::Blocks (http://www.codeblocks.org/) Borland Turbo C++ (http://www.turboexplorer.com/cpp) KDevelop (http://www.kdevelop.org/) Microsoft Visual Studio (https://www.visualstudio.com/) C++ - Einführung | 05.04.16 Seite 8 NetBeans ... 1996 entwickelt von Studenten aus der Tschechischen Republik. 1999 Übernahme durch Sun Microsystems. 2010 Übernahme durch Oracle. Die Programmiersprachen Java, C /C++, PHP und JavaScript werden unterstützt. Download unter https://netbeans.org/. C++ - Einführung | 05.04.16 Seite 9 Installation von NetBeans für C++ Installation des Compilers MinGW und der Tools msys. Umgebungsvariablen für den Compiler setzen. Installation von NetBeans. Installation des Plugins für C/C++. Siehe https://netbeans.org/community/releases/80/cpp-setupinstructions.html oder https://wiki.fbihome.de/Netbeans. C++ - Einführung | 05.04.16 Seite 10 Start von NetBeans Klick auf das Icon auf dem Desktop. Start – Alle Programme – NetBeans – NetBeans IDE. C++ - Einführung | 05.04.16 Seite 11 Startseite C++ - Einführung | 05.04.16 Seite 12 Optionen für C++ Tools / Options. Die Kategorie C/C++ wird angezeigt. Die Registerkarte Build Tools listet den Pfad zum Compiler, Debugger etc. auf. Es werden alle Pfade zu Tools, die für die Erstellung eines ausführbaren Programms benötigt werden, eingestellt. Die Registerkarte Project Options zeigt Regeln zur Erstellung von Objektcode mit Hilfe von make an. Registerkarte Code Assistence. Siehe https://netbeans.org/kb/docs/cnd/HowTos.html Registerkarte Debugging Options. Registerkarte Other legt die Dateiendungen in Abhängigkeit des Dateityps fest. C++ - Einführung | 05.04.16 Seite 13 Build Tools C++ - Einführung | 05.04.16 Seite 14 Code Assistance C++ - Einführung | 05.04.16 Seite 15 C++ - Projekt anlegen File – New Project. Auswahl des Ordners C/C++ in der Liste Categories. In Abhängigkeit des gewählten Elements aus der Liste Projects werden die weiteren Schritte angezeigt. C++ - Einführung | 05.04.16 Seite 16 Hinweis Falls das C++-Projekt auf ein Netzlaufwerk unter Windows angelegt wird, werden automatisch zwei Startpunkte „main“ erzeugt. Die Kompilierung des Programms bricht mit dem Fehler „multiple definition of `main'“ ab. Nach dem Löschen einer der beiden Dateien „main“ kommt die Meldung „... does not exist or is not executable“. C++ - Einführung | 05.04.16 Seite 17 Projects - C/C++ Application Siehe https://netbeans.org/kb/docs/cnd/quickstart.html C++ - Einführung | 05.04.16 Seite 18 Zeile „Project Name“ Projekte bündeln Dateien für ein lauffähiges C++-Programm. Der Name ist der Wurzelordner für alle, zu einem Projekt gehörenden, Dateien im Ordner NetBeansProjects. Standardmäßig wird der Name CppApplication_ und eine fortlaufende Nummer genutzt. Der Name sollte nur die Groß- und Kleinbuchstaben a…z, die Zahlen 0...9 und den Unterstrich enthalten. Die Wörter im Projektnamen beginnen mit einem Großbuchstaben. C++ - Einführung | 05.04.16 Seite 19 Zeile „Project Location“ Mit Hilfe der Schaltfläche Browse... kann der Speicherort für das Projekt festgelegt werden. Die Zeile Project Folder setzt sich aus dem Projektnamen und dem gewählten Speicherort zusammen. C++ - Einführung | 05.04.16 Seite 20 Zeile „Create Main File“ Für ein C++-Programm wird der Einstiegspunkt in das Projekt automatisiert erstellt. Mit Hilfe des „Main Files“ wird jedes C++-Programm gestartet. C++ - Einführung | 05.04.16 Seite 21 Zeile „Tool Collection“ Der Compiler für das C++-Programm wird ausgewählt. Der Compiler übersetzt den lesbaren Programmtext in Maschinencode. Fehler in der Syntax führen zu einem Abbruch. C++ - Einführung | 05.04.16 Seite 22 Compiler für C++ C++ Compiler des GNU-Projekts. Unterstützung für C++11 und C++14. Aktuelle Version GCC 5.3. Download unter http://gcc.gnu.org/. Minimalist GNU for Windows (MinGW). Download unter http://www.mingw.org/. C++ - Einführung | 05.04.16 Seite 23 Windows 7: Umgebungsvariablen Klick im Startmenü auf System. Oder: Suche im Windows Explorer nach Systemsteuerung. Klick auf das Icon System und Sicherheit. System / Erweiterte Systemeinstellungen. Klick auf die Schaltfläche Umgebungsvariablen. C++ - Einführung | 05.04.16 Seite 24 Windows 8: Umgebungsvariablen Suchen Sie in der Suche nach System (Systemsteuerung). Oder: Suche im Windows Explorer nach System (Systemsteuerung). Klick auf den Link Erweiterte Systemeinstellungen. Klick auf die Schaltfläche Umgebungsvariablen. C++ - Einführung | 05.04.16 Seite 25 Umgebungsvariablen für den Compiler setzen Auswahl der Variablen PATH. Klick auf die Schaltfläche Bearbeiten. Die verschiedenen Pfade werden durch ein Semikolon getrennt. Hinzufügung von „C:\MinGW\bin“. Der Ordner enthält den Compiler. Hinzufügung „C:\MinGW\msys\1.0\bin“. Der Ordner enthält Tools zum Erstellen von lauffähigen Programmen. C++ - Einführung | 05.04.16 Seite 26 Geöffnetes Projekt C++ - Einführung | 05.04.16 Seite 27 Aufbau der IDE In der Titelleiste wird der Name des Projekts angezeigt. Menüleiste. Symbolleiste für die wichtigsten Befehle. Mit Hilfe von View – Toolbar können Symbolleisten ein- oder ausgeblendet werden. Code-Fenster und weitere Fenster mit Informationen zu dem Projekt. C++ - Einführung | 05.04.16 Seite 28 Fenster in der IDE Mit Hilfe von Drag & Drop kann ein Fenstern unterhalb der Symbolleiste positioniert werden. Mit Hilfe der Schaltfläche in der rechten oberen Ecke wird ein Fenster minimiert. Die Registerkarten werden am linken Rand der IDE angezeigt. Registerkarten in Fenstern bündeln die verschiedenen Informationen unter verschiedenen Gesichtspunkten. Ein Fenster besitzt mindestens eine Registerkarte. C++ - Einführung | 05.04.16 Seite 29 Registerkarten in einem Fenster Am oberen Rand der Registerkarte wird der Name und die SchließenSchaltfläche angezeigt Mit Hilfe von Drag & Drop kann eine Registerkarte von einem Fenster in ein anderes Fenster verschoben werden. Mit Hilfe des Menüs Window können die verschiedenen Registerkarten geöffnet werden. C++ - Einführung | 05.04.16 Seite 30 „Ordner“ öffnen oder schließen Klick auf das Pluszeichen: Ein Ordner wird geöffnet. Der Inhalt wird angezeigt. Klick auf das Minuszeichen: Ein Ordner wird geschlossen. C++ - Einführung | 05.04.16 Seite 31 Projekt-Explorer Die Registerkarte Projects zeigt die Struktur der Projekte an. Im Ordner Source Files befindet sich der Programmcode. In diesem Ordner werden die Quelldateien (*.cpp) abgelegt. Die Registerkarte Files zeigt die Ordnerstruktur des Projekts an. Im Ordner build befinden sich die Objektdateien (*.o). C++ - Einführung | 05.04.16 Seite 32 Fenster „Classes“ Die Registerkarte Classes zeigt die verschiedenen Klassen in einem Projekt an. Im Ordner Libraries werden die Klassen aus den eingebundenen Bibliotheken angezeigt. C++ - Einführung | 05.04.16 Seite 33 Codefenster Die, im Projekt-Explorer ausgewählte Codedatei (.cpp) wird angezeigt. Schlüsselwörter in C++ werden standardmäßig mit blauer Schrift gekennzeichnet. Kommentare werden in grauer Schrift dargestellt. Benutzerdefinierte Bezeichner werden mit schwarzer Schrift gekennzeichnet. C++ - Einführung | 05.04.16 Seite 34 Projekt schließen File – Close Project (ProjectName). C++ - Einführung | 05.04.16 Seite 35 Eigenschaften eines Projekts File – Project Properties Rechtsklick auf den Projektnamen. Properties im Kontextmenü. C++ - Einführung | 05.04.16 Seite 36 Kategorie „General“ C++ - Einführung | 05.04.16 Seite 37 Hinweis Encoding. Einstellungen für das Codefenster. In welchen Zeichensatz wird der Code gespeichert? Um Fehler zu vermeiden, sollte dort UTF-8 eingestellt sein. C++ - Einführung | 05.04.16 Seite 38 C++ Von der ISO genormte Programmiersprache. Objektorientierte und generische Programmierung. Komplexe, flexible Programmiersprache. Hardware-nahe Programmierung. C++ - Einführung | 05.04.16 Seite 39 Geschichte Ca. 1979 arbeitet Bjarne Stroustrup an einer Programmiersprache unter dem Namen „C mit Klassen“. 1983 ändert sich der Name der Programmiersprache in C++. 1985 wird die erste Referenz zu der Programmiersprache von Bjarne Stroustrup veröffentlicht. 1990 wird Borland's Turbo C++ -Compiler als erste kommerzielles Produkt für die Programmiersprache angeboten. 1998 Veröffentlichung des ersten Standards als ISO/IEC 14882:1998 (C++98). C++ - Einführung | 05.04.16 Seite 40 Standard C++98. ISO/IEC 14882:1998. Publiziert im Jahr 1998. Erste Standardisierung der Programmiersprache. Ergänzung der Norm im Jahr 2003. C++11. ISO/IEC 14882:2011. Publiziert im April 2011. Ersetzung der alten Versionen. C++14. ISO/IEC 14882:2014. Publiziert im Januar 2015. Erweiterungen und Ergänzungen zu C++11. C++ - Einführung | 05.04.16 Seite 41 … in den Eigenschaften eines Projekts in NetBeans C++ - Einführung | 05.04.16 Seite 42 … einstellen Rechter Mausklick auf den Namen des Projekts im ProjektExplorer. Klick auf das Menü Properties. Auswahl der Kategorie Build – C++ Compiler. Die Attribute in der Kategorie Basic Options werden auf der rechten Seite des Dialogfensters angezeigt. Die Eigenschaft C++ Standard hat den Wert <default>. Standardmäßig wird der Standard C++98 genutzt. C++ - Einführung | 05.04.16 Seite 43 Einstellungen für die Version C++11 Die Attribute in der Kategorie Basic Options werden auf der rechten Seite des Dialogfensters angezeigt. Durch einen Klick auf den Pfeil am rechten Rand der Eigenschaft C‑++ Standard wird die Liste aller Möglichkeiten geöffnet. Aus der Liste wird das Element C++11 ausgewählt. Die Attribute in der Kategorie Compilation Line werden auf der rechten Seite des Dialogfensters angezeigt. Die Eigenschaft Additional Options hat den Wert -std=c++11. C++ - Einführung | 05.04.16 Seite 44 Einsatzmöglichkeiten Treiber für die verschiedenste Hardware. Entwicklung von Systemprogrammen. Zeitkritische Spiele. Eine Liste von Beispielen finden Sie unter http://www.stroustrup.com/applications.html. C++ - Einführung | 05.04.16 Seite 45 Programmierkonzepte in C++ Prozedurale Programmierung. Modulare Programmierung. Objektorientierte Programmierung. Generische Programmierung. C++ - Einführung | 05.04.16 Seite 46 Prozedurale Programmierung Top-down Entwurf. Welche Aufgabe soll abgebildet werden? Wie kann die Aufgabe in kleine Teilaufgaben gegliedert werden? Strukturierter Code, aber keine strukturierten Daten. Das Programmierkonzept wird von den Programmiersprachen C und C++ unterstützt. C++ - Einführung | 05.04.16 Seite 47 Modulare Programmierung Aufteilung von Quellcode in verschiedene Dateien. Quellcode zu einem Thema wird in einer Datei zusammengefasst. Auslagerung von Funktionsdeklarationen, Strukturen in eine Header-Datei. Die Deklaration und die Implementierung von Funktionen werden getrennt. Module sind in sich abgeschlossen. Jedes Modul kann allein getestet und ausgeführt werden. Das Programmierkonzept wird von den Programmiersprachen C und C++ unterstützt. C++ - Einführung | 05.04.16 Seite 48 Objektorientierte Programmierung Bottom-up Design. Welche Daten werden zur Beschreibung eines Objekt aus der realen Welt benötigt? Welche Methoden werden zur Modifizierung eines Objektes benötigt? Methoden und Daten zu einem bestimmten Objekttyp werden gemeinsam in einer Klasse gekapselt. Die Klasse beschreibt allgemein einen bestimmten Typ von Objekt (zum Beispiel ein Würfel). Eltern können von Kindern erben. Ein Rechteck erbt Eigenschaften von einem Würfel. Das Programmierkonzept wird von der Programmiersprache C++ unterstützt. C++ - Einführung | 05.04.16 Seite 49 Generische Programmierung Nutzung von Schablonen zur Beschreibung eines Objekts. Schreiben von Methoden unabhängig vom Typ des Objektes. Nutzung von Templates. Das Programmierkonzept wird von der Programmiersprache C++ unterstützt. C++ - Einführung | 05.04.16 Seite 50 C++-Programm #include <iostream> using namespace std; Beispiele/_0101_HelloWorld... int main () { cout << "Hello World \n"; return 0; } C++ - Einführung | 05.04.16 Seite 51 Programm Ein in einem Texteditor eingegebener Text. Für den Menschen lesbarer Quellcode. Beschreibung von Aktionen mit Hilfe einer Programmiersprache. Hier: Ausgabe des Textes „Hello World“ Nutzung der Syntax einer Programmiersprache. Hier: C++. C++ - Einführung | 05.04.16 Seite 52 Kommentare ... /* * File: main.cpp * Author: ... * * Created on 5. April 2016, 10:17 */ beginnen mit /* und enden mit */. Zwischen den Sternchen und dem Schrägstrich steht kein Leerzeichen beschreiben am Anfang einer Datei den Zweck des Codes. geben Auskunft über deren Ersteller und dem Erstellungszeitraum. C++ - Einführung | 05.04.16 Seite 53 Aufbau eines C++-Programms Präprozessor-Anweisung using namespace std; int main () { Anweisung; Anweisung; return 0; } C++ - Einführung | 05.04.16 Seite 54 Präprozessor-Anweisungen ... #include <iostream> beginnen immer mit dem Hash (#). enden automatisch mit dem Ende der Zeile stehen immer am Anfang einer Quelldatei oder Header-Datei. binden die verschiedenen Bibliotheken mit Hilfe des Befehls #include ein. C++ - Einführung | 05.04.16 Seite 55 Einbindung von Dateien #include <iostream> Mit Hilfe des Befehls #include können sogenannte HeaderDateien eingebunden werden. Dateien werden immer am Anfang des Quellcodes eingebunden. In diesem Beispiel wird die Bibliothek iostream eingebunden. Der Bibliotheksname wird durch die spitzen Klammern begrenzt. Die Bibliothek definiert Funktionen zur Ein- und Ausgabe von Text. C++ - Einführung | 05.04.16 Seite 56 C++ - Standardbibliothek „Werkzeugkasten“ auf Basis von Templates. Definition von Containern in Form von zum Beispiel Listen und Vektoren. Funktionen zur Ein- und Ausgabe am Bildschirm. Mathematische Funktionen. C++ - Einführung | 05.04.16 Seite 57 Namespace using namespace std; Nutze den Namensraum „Standard“. Funktionen werden in „Paketen“ verpackt, um Namenskonflikte zu vermeiden. Alle Standardkomponenten der Programmiersprache C++ liegen in dem Namensraum std. Mit Hilfe dieser Anweisung sind alle Namen in dem angegeben „Paket“ nutzbar. C++ - Einführung | 05.04.16 Seite 58 Funktion int main() { return 0; } C++ - Einführung | 05.04.16 Jede Funktion hat einen Kopf und einen Rumpf. Der Funktionskopf beschreibt die Funktion und legt die Startwerte fest. Der Funktionsrumpf wird durch die geschweiften Klammern begrenzt. Die Aufgabe der Funktion wird in einer bestimmten Programmiersprache im Rumpf definiert. Seite 59 Funktionskopf int main() () Typ des Rückgabewertes Name Startparameter Deklaration der Funktion. Wie wird die Funktion gestartet? C++ - Einführung | 05.04.16 Seite 60 Funktionskopf int main() () Der Name der Funktion ist eindeutig. C++ beachtet die Großund Kleinschreibung bei benutzerdefinierten Bezeichnungen. Der Name spiegelt die Aufgabe wieder. In den runden Klammern kann der Funktion ein oder mehrere Startwerte übergeben werden. In diesem Beispiel sind die runden Klammern leer. Der Funktion werden keine Startparameter übergeben. Die Funktion gibt einen Wert an den Aufrufer zurück. In diesem Beispiel wird eine Ganzzahl zurückgegeben. C++ - Einführung | 05.04.16 Seite 61 Startpunkt für ein C++-Programm int main() { return 0; } C++ - Einführung | 05.04.16 Jedes C++-Programm hat einen definierten Startpunkt: main(). Mit dieser Funktion beginnt jedes ausführbare Programm, welches in C++ geschrieben wurde. main ist der Name der Startprozedur. Der Name muss klein geschrieben werden. Beim Starten werden diesem Programm keine Parameter übergeben. Dem Starter wird ein Wert zurückgegeben. Seite 62 Anweisungen in C++ { cout << "Hello World \n"; return 0; } Pro Zeile wird eine bestimmte Aktion mit Hilfe von Schlüsselwörtern der Programmiersprache C++, Operatoren und Variablen beschrieben. Anweisungen haben eine bestimmte Syntax. Anweisungen werden mit einem Semikolon beendet. Falls nicht, wird ein Syntaxfehler angezeigt, Mit Hilfe der geschweiften Klammern werden Anweisungen zu Blöcken zusammengefasst. C++ - Einführung | 05.04.16 Seite 63 Schlüsselworte in C++ alignias alignof and and_eq asm auto bitand bitor bool break case catch char C++ - Einführung | 05.04.16 char16_t char32_t class compl const constexpr const_cast continue decltype default delete do double dynamic_cast else enum explicit export extern false float for friend goto if inline Seite 64 Schlüsselworte in C++ int long mutalbe namespace new noexcept not not_eq nullptr operator or or_eq private C++ - Einführung | 05.04.16 protected public register reinterpret_cast return short signed sizeof static static_assert static_cast struct switch template this thread_local throw true try typedef typeid typename union using virutal void voatile wchar_t while xor xor_eq Seite 65 Ausgabe eines Textes int main() { cout << "Hello World \n" } cout ist ein Platzhalter für die Standardausgabe. Mit Hilfe des Umleitungsoperators << wird der angegebene Text auf die Standardausgabe umgeleitet. Der Text wird durch die Anführungszeichen begrenzt. \n ist ein Platzhalter für eine neue Zeile. C++ - Einführung | 05.04.16 Seite 66 Weitere Hinweise Die Zeile #include <iostream> wird benötigt. Das Objekt cout ist in der Bibliothek iostream definiert. Die Zeile using namespace std; muss am Anfang des Code stehen. Andernfalls ist das Objekt cout im Programm nicht sichtbar und kann nicht genutzt werden. C++ - Einführung | 05.04.16 Seite 67 „Konsole“ in NetBeans Fenster Output meist am unteren rechten Rand der IDE. Falls eine Registerkarte die Bezeichnung (Run) besitzt, wurde das Programm ausgeführt und die Ausgabe in der Registerkarte angezeigt. Java - Einführung | 06.05.15 Seite 68 Rückgabe eines Wertes int main() { return 0; } Der Befehl return gibt einen Wert an den Aufrufer der Prozedur zurück. In diesem Beispiel gibt die Funktion main Null an den Aufrufer zurückgegeben. Der Rückgabewert entspricht dem angegeben Typ für den Rückgabewert im Funktionskopf. Die Funktion gibt einen Typ int zurück. Die Zahl Null ist eine Ganzzahl (Integer). C++ - Einführung | 05.04.16 Seite 69 Nutzung in der Funktion main() Der Rückgabewert ist immer eine Ganzzahl. Die Funktion gibt ein Integer zurück. Mit Hilfe des Rückgabewertes 0 wird dem Aufrufer signalisiert, „Das Programm ist ohne Fehler ausgeführt wurden“. C++ - Einführung | 05.04.16 Seite 70 Formatierung von Code int main() { cout << "Hello World \n"; return 0;; } int main() {cout << "Hello World \n";return 0;} Keines der Programme erzeugt einen Fehler. C++ - Einführung | 05.04.16 Seite 71 Hinweise Eine Anweisung endet in C++ mit einem Semikolon. Pro Zeile sollte eine Anweisung stehen. Zusammengehörige Blöcke sollten mit Hilfe von Tabs eingerückt werden. Namen, Klammern etc. werden durch Leerzeichen getrennt. In einem Namen wie zum Beispiel main darf kein Leerzeichen vorkommen. In Strings oder Namen darf kein Zeilenumbruch (Taste RETURN; Eingabetaste) genutzt werden. C++ - Einführung | 05.04.16 Seite 72 Style Guides http://geosoft.no/development/cpppractice.html https://gcc.gnu.org/wiki/CppConventions http://www.stroustrup.com/bs_faq2.html https://users.ece.cmu.edu/~eno/coding/ CppCodingStandard.html https://google.github.io/styleguide/cppguide.html C++ - Einführung | 05.04.16 Seite 73 Ausführbares Programm erstellen Quelltext ([datei].cpp) g++ -c helloWorld.cpp Präprozessor Compiler Objektcode ([datei].o) C++ - Einführung | 05.04.16 Seite 74 Präprozessor und Compiler Der Präprozessor ersetzt die mit einem Hash-Zeichen gekennzeichneten Zeilen durch den entsprechenden Text. Der Compiler übersetzt den lesbaren Programmtext in Maschinencode. Fehler in der Syntax führen zu einem Abbruch. C++ - Einführung | 05.04.16 Seite 75 Linker Bindet alle zu einem Programm gehörenden Objektdatei zu einer ausführbaren Datei zusammen. Falls die einzubindenden Dateien nicht vorhanden sind, wird eine Fehlermeldung ausgegeben. C++ - Einführung | 05.04.16 Seite 76 NetBeans: Quelldatei kompilieren Quelltext ([datei].cpp) Rechter Mausklick auf die Datei. Compile File. Präprozessor Compiler Objektcode ([datei].o) C++ - Einführung | 05.04.16 Seite 77 NetBeans: Alle Quelldateien kompilieren Quelltext ([datei].cpp) Run – Build Project Run – Clean and Build Project Präprozessor Compiler Objektcode ([datei].o) C++ - Einführung | 05.04.16 Seite 78 NetBeans: Ausführbares Programm erstellen Objektcode ([datei].o) Linker Maschinencode ([datei].exe) Run – Run Project C++ - Einführung | 05.04.16 Seite 79 Konsole in NetBeans Ausgabe von Informationen an den Benutzer. Einlesen von Informationen durch das Programm. Window - Output oder <STRG>+<4> minimiert oder maximiert die Konsole. C++ - Einführung | 05.04.16 Seite 80 Starten des C++-Programms Mit Hilfe des grünen Pfeils am linken Rand wird das, in der Titelleiste benannte Programm gestartet. C++ - Einführung | 05.04.16 Seite 81 C++-Programm stoppen Mit Hilfe des roten Rechtecks am linken Rand wird das, in der Titelleiste benannte laufende Programm angehalten. Das Programm wird nicht vollständig durchlaufen, sondern vom Entwickler vorzeitig abgebrochen. C++ - Einführung | 05.04.16 Seite 82