Make C++ fail compilation on specific instantiation of template function erläutert, wie die Kompilierung fehlschlagen kann, wenn eine Funktion mit einer bestimmten Klasse instanziiert wird, nicht aber wie dies mit einer Klasse geschieht.make compilation fail bei spezifischer Instanziierung der Vorlagenklasse
Sagen wir, ich habe eine Klasse:
template<class T>
class foo;
und ein anderes class Bar
. Wie würde ich die Kompilierung fehlschlagen lassen, wenn foo instanziiert oder auf Bar
spezialisiert ist?
Alle Lösungen sind wie Laufzeit (obwohl die Auswertung zur Kompilierzeit ist, kann der Fehler nur zur Laufzeit angegeben werden, was nicht geeignet ist).