C++-Tricks: Das fehlende Konstrukt always_false
Reichen die Bestandteile einer Sprache nicht aus, um Codeprobleme zu lösen, greifen Entwickler auf Hilfskonstrukte zurück. Wir stellen always_false vor.
- Andreas Fertig
Das Hilfskonstrukt always_false
erstellt einen typabhängigen Ausdruck, wie er bei Templates benötigt wird. Wie der Name sagt, liefert always_false
immer false
zurück. Ein solches Konstrukt ist in einigen Situationen bei einem static_assert
erforderlich. Dieser Artikel zeigt verschiedene Situationen und mögliche Implementierungen von always_false
.
Templates sind ein mächtiges Werkzeug in C++. Aber nicht selten verursachen sie lange, schwer verständliche Fehlermeldungen des Compilers. Ein solcher Fall tritt in dem folgenden Listing auf.
Listing 1: Primäres Klassentemplate Hash mit Spezialisierungen für Cat und Dog
Das war die Leseprobe unseres heise-Plus-Artikels "C++-Tricks: Das fehlende Konstrukt always_false ". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.