Community-Tutorials (Source)

Teil 1 - Aller anfang ist schwer

Hallo Leute

Ich bin neu hier im Board, darum will ich mich mal vorstellen:

Mein Name ist Alexander E. und bin 15 Jahre alt und wohne im schönen Österreich :ugly: .

Da immer wieder gefragt wird: Will eine neue Waffe ins Spiel importieren, wie geht das.... , habe ich mich entschlossen mal eine Reihe von C++ Tutorial`s zu schreiben, die keine Vorkentnissee über Programmiersprachen oder C++ voraussetzen.

Ich fange von ganz von vorne an, und am schluss meiner Tutorial Reihe wird nun endlich die Waffe im Spiel sein.

Teil1: Was ist C++?

C++ ist wie anders erwartet eine Programmiersprache für Allgemeine Anwendungen wie objektorientierte und strukturiere Programmierung.

Stärken:

* Die Erzeugung hocheffizienten Codes ist möglich.

* Sowohl maschinennahe als auch hochabstrakte Programmierung ist möglich.

* Sehr hohe Ausdrucksstärke und Flexibilität - Beispiel: die anpassbare
Freispeicherverwaltung, in die sich etwa nahtlos ein Garbage Collector integrieren lässt.

* Für große Projekte geeignet

* Weite Verbreitung

* Die Sprache ist nicht im Besitz einer Organisation (im Unterschied zu beispielsweise Java). Standardisierung durch die ISO

* Weitreichende Möglichkeiten für die Metaprogrammierung

* Kompatibilität mit C - Vorteil: Es steht eine breite Codebasis zur Verfügung.

Schwächen:

* Kompatibilität mit C - Nachteil: historischer Ballast muss mitgeschleppt werden, zum Beispiel der von C übernommene Präprozessor, die teilweise unnötig schwer verständliche C-Syntax. Die Kompatibilität zu C hat u.a. zur Folge, dass einige Details der Sprache compilerspezifisch sind, die es aber nicht sein müssten. So ist beispielsweise die Auswertungsreihenfolge von Teilausdrücken je nach Compiler und Plattform unterschiedlich. Dies erschwert die Portierung von C++-Programmen zwischen Rechnertypen, Betriebssystemen und unterschiedlichen Compilern.

* Die aktuellen Compiler (Stand: 2005) sind rückständig bezüglich der Umsetzung der ISO-Norm.

* Die aktuellen Compiler produzieren nicht immer optimalen Code, sowohl in Bezug auf Geschwindigkeit als auch auf Code-Größe.

* Zum Erlernen sind verhältnismäßig lange Einarbeitungszeiten erforderlich.

* Die vorhandene C++-Standardbibliothek deckt viele wichtige Erfordernisse nicht ab, zum Beispiel Threads, TCP/IP, Dateisystem-Verzeichnisse. Deshalb besteht in diesen Bereichen eine eingeschränkte Portabilität über Betriebssystemgrenzen hinweg. Dies führte auch zur Entwicklung zahlreicher externer Bibliotheken, die ein teilweise unausgereiftes und uneinheitliches Bild von C++ vermitteln.

* Es stehen keine eingebauten Mechanismen zur Serialisierung/Deserialisierung eines Objektes bereit, wie von einigen anderen Sprachen (z.B. C#, Java) gewohnt.

* Die Kompatibilität zu C hat zur Folge, dass einige Details der Sprache compilerspezifisch sind, die es aber nicht sein müssten. So ist beispielsweise die Auswertungsreihenfolge von Teilausdrücken je nach Compiler und Plattform unterschiedlich. Dies erschwert die Portierung von C++-Programmen zwischen Rechnertypen, Betriebssystemen und unterschiedlichen Compilern.

Teil2: Der Compiler

Der Compiler (dt. = Übersetzer) Verwandelt den vom Benutzer eingegebene Code in die "Maschinensprache" (z.B 0010111011010).

Für das SDK brauchen wir "Microsoft Visual Studio .NET 200*" wo es eine Testversion
HIER gibt.

Aber ein guter Tipp von mir ist: Zu meinen jetztigen Tutorials solltet ihr den Freeware Compiler "Dev-C++" benutzen, den man HIER bekommen kann.

Teil3: Dev-C++

Dev-C++ ist ein "Freeware" Compiler den jeder frei benutzen darf.

Nachdem ihr den Compiler gedownloadet habt, drückt mal auf die Setup, und dan Installiert mal das ganze.
Jetzt öffnet ihr das Programm, es sollte nun so aussehen:

alex001.jpg

Jetzt klickt ihr auf Datei --> Neu --> Projekt und wählt "Console Application" aus, dan bei Namen den Namen eingeben :D .

Jetzt auf OK klicken.

Dan wählt ihr aus wo das Projekt hingespeichert wird. Wir können die Vor-Einstellung beibehalten und klicken auf "Speichern".

So, willkommen liebe C++ Neulinge, jetzt wirds ernst.^^

Teil4: Das erste Programm:

Wir löschen das Vorgeschriebene, bis die Seite ganz leer ist.
So, jetzt fangen wir an:

Wir schreiben:

#include <iostream>

using namespace std;

int main() {


system("PAUSE");
}

Erklärung: Mit

#include 
werden fremde Programmteile eingebunden. In diesem fall wird die mit C++ mitgelieferte Bibliothek iostream eingebunden, welche die Standard-Eingabe und -Ausgabe Befehle beinhaltet.

Mit

using namespace std;
laden wir den Namespace std.
Wen wir das nicht schreiben müssten wir statt cout<<""; | std::cout<<""; schreiben.

Es ist so: Man wohnt in Wien und will ein Freund in Linz anrufen, da wählt man die Vorwahl von Linz ( 02644 04444 ). Wen man jetzt aber in Linz wohnt und einen Freund anrufen möchte der auch in Linz wohnt, wählt man nur 04444 vor.

int main() { }
... ist die Standart Prozedur, wo der Code reingeschrieben wird, also zwischen die beiden geschwungenen Klammern { }.

 system("PAUSE"); 
Da wir auch was sehen wollen, vom geschriebenen, bauen wir den Programm eine PAUSE ein.

------
So jetzt klickt ihr mal auf "Ausführen --> Kompilieren".
Nach kurzer Zeit müsste es so ausehen:

alex002.jpg
.

Wen JA dan klickt nochmals auf "Ausführen" und dan "Ausführen".
Jetzt müsste sich eine DOS Konsole öffnen:

alex003.jpg

---
Herzlichen glückwunsch! Du hast soeben gelernt wie ein C++ Programm minimal aufgebaut ist, und hast soeben dein erstes Programm geschrieben.

Teil2 folgt bald!

Feedback ist mir sehr sehr wichtig!!

Sorry für die Rechtschreibfehler... Es ist schon spät und Kaffee ist aus :(

Bisherige C++ Tutorials:

Tut Nr1:
Tutorial Nr1

Tut Nr2:
Tutorial Nr2

Tut Nr3:
Tutorial Nr3

Tut Nr4:
Tutorial Nr4