Als Appetizer servieren die C++ Core Guidelines ihren Lesern zunächst einige philosophische Erkenntnisse. Deren Einhaltung lässt sich nur schwer über Algorithmen abfragen, C++-Entwicklern verhelfen die Rezeptideen dennoch zu modernem Code aus einem Guss.
Linux-Magazin-Autor Rainer Grimm stellt im ersten Teil seiner neuen C++-Serie Wegweiser durch den Dschungel der C++-Richtlinien auf. Die sollen Programmierern auf den richtigen Pfad im Umgang mit der komplexen Sprache bringen – manche wirken aber schon recht verwittert.
Getreu dem Albert Einstein zugeschriebenen Motto "Mache die Dinge so einfach wie möglich, aber nicht einfacher", beschäftigt sich dieser Beitrag damit, wie sich C++-Quellcode sinnvoll simplifizieren lässt.
C++-Experte Rainer Grimm soll für einen Kunden ein Telefonbuch entwickeln und er will nicht bei null anfangen. Wozu gibt es schließlich praktische Helfer in Form von Bibliotheken?
Weiß ein Software-Entwickler die Intelligenz des Compilers zu nutzen, spart er sich das aufwändige und fehlerträchtige Prüfen der Software. Das übernehmen "static_assert" und die Type-Traits-Bibliothek.
Bücher für Programmierer an entgegengesetzten Enden der Karriereleiter. Sie begleiten einmal das Arbeiten am oberen Ende und zum anderen den Schritt auf die unterste Sprosse.
Wer seinen Quellcode auf Lesbarkeit optimiert, ist nicht automatisch ein Ästhet. Schöner Code spart auch Geld, weiß C++-Autor Rainer Grimm und gibt Tipps, um die Lesbarkeit von Code zu verbessern.
Aufgrund der flotten Updates bei den C++-Standards haben Compilerbauer in letzter Zeit alle Hände voll zu tun. Doch wie genau folgen sie den Standards und wo liegen eigentlich die Unterschiede?
Zeigt ein C++-Programm undefiniertes Verhalten, sind verlässliche Aussagen gerade zu diesem Verhalten nicht mehr möglich. Oder anders ausgedrückt: Der Computer kann sogar in Rauch aufgehen. Ein heißes Thema also, wobei sich undefiniertes Verhalten mit etwas Geschick auch vermeiden lässt.
Hochperformanten Code zu schreiben, den nur Eingeweihte zu würdigen wissen, ist für Entwickler ein bisschen so, wie für Formel-1-Testpiloten mit einem neuen Motor den Rundenrekord auf dem Nürburgring zu knacken. Doch oft endet der Tuningversuch in der Leitplanke.
Verantwortung abgeben fällt C++-Entwicklern nicht immer leicht. Dabei trifft der Compiler fast immer die besseren Entscheidungen, wie der vorliegende Artikel zeigt.
Mit der Move-Semantik und konstanten Ausdrücken besitzt modernes C++ eine kräftige Stellschraube, um die Performance einer C++-Anwendung in die richtige Richtung zu drehen.
Beim deklarativen Programmieren drückt der C++-Programmierer unter anderem mit Hilfe von Schlüsselwörtern aus, was er erreichen möchte. Der Compiler kümmert sich dann um den weiteren Weg.
Implizite Typkonvertierungen sind eine der Ursachen für undefiniertes Verhalten in C- und C++-Programmen. In Kurzform bedeutet dies, dass solche Programme alles Mögliche tun dürfen und unvorhersehbar reagieren. C++-Routinier Rainer Grimm zeigt, wie C++-Entwickler diese Falle umgehen.
Gut 30 Artikel und fünf Jahre ist diese Serie zum modernen C++ nun alt. Jetzt ist es Zeit für einen Fokuswechsel. Drehte es sich bisher um die Frage "Welche Features bietet modernes C++?", so wird es in Zukunft um die Frage gehen: "Wie setzt der Programmierer die Features von modernem...














