Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
'argumentum' : érvénytelen sablon argumentum a(z) 'típus' számára, fordítási időben végrehajtott konstans kifejezés várt
Megjegyzések
A sablon argumentuma nem egyezik a sablondeklarációval; a szögletes zárójelek között állandó kifejezésnek kell megjelennie. A változók nem használhatók sablonbeli tényleges argumentumként. Ellenőrizze a sablondefiníciót, hogy megtalálja a megfelelő típusokat.
Példák
Az alábbi példa C2975-öt hoz létre, és a helyes használatot is megjeleníti:
// C2975.cpp
template<int I>
class X {};
int main() {
int i = 4, j = 2;
X<i + j> x1; // C2975
X<6> x2; // OK
}
A C2975 akkor is előfordul, ha fordítási idejű konstansként használja a __LINE__-t a /ZI-tel. Az egyik megoldás az lenne, hogy /Zi-vel fordítunk a /ZI helyett.
// C2975b.cpp
// compile with: /ZI
// processor: x86
template<long line>
void test(void) {}
int main() {
test<__LINE__>(); // C2975
}