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.
'type': klasse is geen klassetype
Opmerkingen
De meest voorkomende oorzaak voor deze fout is wanneer er meer algemene lijsten of sjabloonparameterlijsten zijn op het punt van definitie dan op het punt van declaratie.
Voorbeelden
In het volgende voorbeeld wordt C3856 gegenereerd:
// C3856.cpp
template <class T>
struct S {
template <class T1>
struct S1;
void f();
};
template <class T> // C3856
template <class T1>
template <class T2> // extra template parameter list in definition
struct S<T>::S1{};
Mogelijke oplossing:
// C3856b.cpp
// compile with: /c
template <class T>
struct S {
template <class T1>
struct S1;
void f();
};
template <class T>
template <class T1>
struct S<T>::S1{};
C3856 kan ook optreden bij het gebruik van generics:
// C3856c.cpp
// compile with: /clr
generic <class T>
ref struct GS {
generic <class U>
ref struct GS2;
};
generic <class T>
generic <class U>
generic <class V>
ref struct GS<T>::GS2 {}; // C3856
Mogelijke oplossing:
// C3856d.cpp
// compile with: /clr /c
generic <class T>
ref struct GS {
generic <class U>
ref struct GS2;
};
generic <class T>
generic <class U>
ref struct GS<T>::GS2 {};