Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
'argument' : neplatný argument šablony pro 'type', očekávaný výraz konstanty kompilátoru a času kompilace
Poznámky
Argument šablony neodpovídá deklaraci šablony; Konstantní výraz by se měl objevit v hranatých závorkách. Proměnné nejsou povolené jako skutečné argumenty šablony. Zkontrolujte definici šablony a vyhledejte správné typy.
Examples
Následující příklad vygeneruje C2975 a také ukazuje správné použití:
// C2975.cpp
template<int I>
class X {};
int main() {
int i = 4, j = 2;
X<i + j> x1; // C2975
X<6> x2; // OK
}
K C2975 dochází také při použití __LINE__ jako kompilační čas konstanta s /ZI. Jedním z řešení by bylo zkompilovat místo /Zi/ZI.
// C2975b.cpp
// compile with: /ZI
// processor: x86
template<long line>
void test(void) {}
int main() {
test<__LINE__>(); // C2975
}