C++Guns – RoboBlog

04.09.2017

C++ Guns - Semantik und concepts - Part 2

Filed under: Allgemein — Tags: , — Thomas @ 14:09

Im letzten Post wollte ich deutlich machen, welche Art von Fehler passieren, wenn zwischen den TypenPoint3D und Vector3D keinen semantischen Unterschied gemacht wird. Also, wenn ein Rechenergebnis von der Bedeutung ein Vektor ist, es aber in einem Punkt Datentyp gespeichert wird. Die erste Lösung war, einen zusätzlichen Datentyp Vector3D zu erstellen, welcher sich genau wie […]

01.09.2017

C++ Guns - C++17 Extension to aggregate initialization

Filed under: Allgemein — Thomas @ 14:09

C++17 bringt ein paar tolle Sachen mit. Mit der Erweiterten Aggregat Initialisierung kann ich nun endlich meinen Lieblings Point3D Datentyp zusammenbauen. Dieser soll mit den Funktionen x(), y() z() Zugriff auf die einzelnen Skalare bieten, aber gleichzeitig ein Array fester Länge sein. Damit der Compiler besser optimieren kann. Der Typ selbst soll ein Array sein, […]

C++ Guns - Semantik und concepts - Part 1

Filed under: Allgemein — Tags: — Thomas @ 10:09

Ich lese gerade das Paper Concepts: The Future of Generic Programming or How to design good concepts and use them well von Bjarne Stroustrup http://www.stroustrup.com/good_concepts.pdf und muss sagen, ich bin restlos begeistert! Die Idee dahinter wird sehr toll beschrieben. Das ist mir am wichtigsten, so dass es möglich ist, die Idee auch bei anderen Programmiersprachen […]

22.08.2017

C++ für Anfänger&Profis - Container mit Ganzzahl

Filed under: Allgemein — Tags: — Thomas @ 15:08

Im zweiten Beispiel beschäftigen wir uns damit, wie es möglich ist, beliebig viele Zahlen gleichzeitig zu speichern. Dazu wird ein Container benötigt. C++ bietet hierfür unter anderem die Klasse vector an. Im folgenden Beispiel wird ein vector vom Typ int, der Länge 5 angelegt und ihn mit den Zahlen 1 bis 5 befüllt. Zu beachten […]

21.08.2017

C++ für Anfänger&Profis - Hello World! - Details

Filed under: Allgemein — Tags: — Thomas @ 15:08

Wie anfangs erwähnt gibt es für jedes Beispiel eine extra Seite mit Details. Über Performance kann ich bei einem Hello World! Programm wenig sagen, aber dennoch gibt es ein paar Sachen zu erwähnen. Schauen wir uns den Code noch einmal an: Die #include Anweisungen sind gang und gäbe. Aber bald nicht mehr nötig. Module ersetzen […]

20.08.2017

C++ für Anfänger&Profis - Hello World!

Filed under: Allgemein — Tags: — Thomas @ 07:08

Das traditionell erstes Programm in einer neuen Programmiersprache gibt den Satz "Hello World!" am Bildschirm aus. Daran wollen wir uns halten. Ohne Umschweife hier der Code. Eintippen, compilieren, starten und freuen. Da es das erste Beispiel ist, werde ich hier jede Zeile Code und jedes kryptische Zeichen erklären. In den ersten beiden Zeilen stehen #include […]

C++ für Anfänger&Profis - Grundsätzliches

Filed under: Allgemein — Tags: — Thomas @ 07:08

Ein paar grundsätzliche Worte über die Sprache C++. Anders als z.B. Python oder PHP ist C++ eine statisch, stark typisierte Sprache. Das heißt, dass zum Zeitpunkt, wenn der Compiler den Code compiliert, jede Variable einen Type haben muss. Damit ist es möglich Fehler schon während der Entwicklung zu entdecken, bevor das lauffähige Programm existiert. Und […]

C++ für Anfänger&Profis - Qt Creator

Filed under: Allgemein — Tags: — Thomas @ 06:08

Bilder von download, installation, und erstes Projekt Hello world

C++ für Anfänger&Profis - Die Entwicklungsumgebung

Filed under: Allgemein — Tags: — Thomas @ 06:08

Die eingesetzte Entwicklungsumgebung hat für mich einen großen Stellenwert beim Programmieren. Sie muss einfach zu installieren sein und einen Compiler mitbringen. Es braucht auf alle Fälle eine gute und schnelle Autovervollständigung, Syntaxhervorhebung, Fehlererkennung und Vorschläge zur Korrektur des Codes, automatische Einrückung, sowie Projekt Management. Die Entwicklungsumgebung muss portabel für alle gängigen Computersysteme existieren und ab […]

C++ für Anfänger&Profis - Vorwort

Filed under: Allgemein — Tags: — Thomas @ 05:08

Es gibt so viele Bücher über C++, aber 99% davon lehren nur schlechtes C. Der Unterschied zwischen diesen beiden Sprache ist fundamental, aber von dem Laien nicht ersichtlich. Die wenigen Bücher die sie wirklich mit C++ beschäftigen, und darunter die, welche modernes C++ behandeln, wie C++11, C++14 und C++17, die sind oft von dem Machern […]

« Newer PostsOlder Posts »

Powered by WordPress