Blog 1 Min. Lesezeit

Verbessern Sie Ihre C++-Kenntnisse mit der Clang-Testsuite.

Diesen Artikel teilen
Improve your C++ skills by exploring the Clang test suite.

Viele Quellen beschäftigen sich mit den besten Möglichkeiten, eine Programmiersprache zu lernen, darunter:

  • Ein Buch oder eine Fachzeitschrift lesen.
  • Ressourcen auf Websites nutzen.
  • Von einem Kollegen lernen.
  • An einer Schulung teilnehmen.
  • Open-Source-Projekte untersuchen.

Es ist jedoch schwierig, Quellen zu finden, die fortgeschrittene C++-Techniken anhand kleiner, gezielter Beispiele erklären. Wer seine C++-Kenntnisse verbessern möchte, bekommt häufig den Rat, den Standard zu lesen. Das kann allerdings abschreckend sein: Nur wenige Entwickler möchten sich durch ein Dokument mit mehr als 1.500 Seiten arbeiten.

Ein anderer Ansatz besteht darin, die kleinen Beispiele im Quellcode von Compilern zu untersuchen. Open-Source-C++-Compiler wie GCC und Clang implementieren den C++-Standard. Clang bietet erfreulicherweise eine umfangreiche Testsuite, mit der die Konformität des Compilers zum Standard überprüft wird. Die Beispiele sind sauber umgesetzt, leicht verständlich und gut kommentiert und decken zahlreiche C++-Features ab.

Sie können diese kleinen Beispiele untersuchen, um bestimmte C++-Features besser zu verstehen. Zahlreiche Testfälle befinden sich unter $LLVMPATH$\tools\clang\test. Sie decken viele Bereiche des Compilers ab:

clangtest

Für die C++-Syntax können Sie die Beispiele im Verzeichnis SemaCXX untersuchen. Dort finden Sie viele interessante Testfälle, die nahezu alle C++-Features abdecken, einschließlich der mit C++11 und C++14 eingeführten Funktionen.

clangtest2

Nehmen wir als Beispiel die C-Style-Casts in der Datei cstyle-cast.cpp:

clangtest3

Dieser Test ist gut kommentiert und erklärt die verschiedenen Casting-Fälle. Entwickler können durch seine Analyse viel lernen.

Zusammenfassung:

Die Clang-Testsuite kann jedem C++-Entwickler helfen, seine Programmierkenntnisse zu verbessern. Selbst C++-Experten können beim Studium dieser gezielten Beispiele noch neue Details entdecken.

Diesen Artikel teilen