Compilerfehler C2926
Aktualisiert: November 2007
Fehlermeldung
'Typ': Lokale oder unbenannte Typen können nicht als Typargumente verwendet werden
'type' : local types or unnamed types cannot be used as type arguments
Eine generische oder auf einem lokalen oder unbenannten Typ basierte Vorlagenklasse kann nicht instanziiert werden. Für die Instanziierung verwendete Typen müssen extern verknüpft sein.
Im folgenden Beispiel wird C2926 generiert:
// C2926.cpp
// compile with: /Za
template<class T>
class X {};
struct Z{};
int main() {
struct Y{};
X<Y> x; // C2926
X<Z> x2; // OK
}