E2389 Keine Übereinstimmung des Substitutionsarguments und des Template-Parameters 'parameter' (C++)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Compiler-Fehler und -Warnungen (C++) - Index

Bei der Referenzierung einer Template-Spezialisierung müssen alle Typ-Parameter mit Typ-Argumenten, alle Nicht-Typ-Parameter mit Nicht-Typ-Argumenten und alle Template-Template-Parameter entweder mit einem Template-Namen oder mit einem anderen Template-Template-Argument versorgt werden. Wird diese Regel nicht beachtet, tritt der obige Fehler auf. Ein Beispiel:



 template<class T, int U, template<class V> class W>
 class foo;
 foo<char, 10, foo> x;    // OK: alle Parameterarten passen
 foo<10, char, int> y;    // Fehler: keine Parameterarten passen