Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
'argument': ongeldig sjabloonargument voor 'type', verwachte compilatietijdconstante expressie
Opmerkingen
Het sjabloonargument komt niet overeen met de sjabloondeclaratie; er moet een constante expressie worden weergegeven binnen de punthaken. Variabelen zijn niet toegestaan als werkelijke sjabloonargumenten. Controleer de sjabloondefinitie om de juiste typen te vinden.
Voorbeelden
In het volgende voorbeeld wordt C2975 gegenereerd en wordt ook het juiste gebruik weergegeven:
// C2975.cpp
template<int I>
class X {};
int main() {
int i = 4, j = 2;
X<i + j> x1; // C2975
X<6> x2; // OK
}
C2975 treedt ook op wanneer u __LINE__ als een compilatieconstante gebruikt met /ZI. Eén oplossing is om mee /Zi te compileren in plaats van /ZI.
// C2975b.cpp
// compile with: /ZI
// processor: x86
template<long line>
void test(void) {}
int main() {
test<__LINE__>(); // C2975
}