Erreur du compilateur C3217
'param' : le paramètre générique ne peut pas être limité dans cette déclaration
Une contrainte était mal formée ; le paramètre générique de la contrainte doit s’accorder avec le paramètre de modèle de classe générique.
L’exemple suivant génère l’erreur C3217 :
// C3217.cpp
// compile with: /clr
interface struct A {};
generic <class T>
ref class C {
generic <class T1>
where T : A // C3217
void f();
};
L’exemple suivant illustre une résolution possible :
// C3217b.cpp
// compile with: /clr /c
interface struct A {};
generic <class T>
ref class C {
generic <class T1>
where T1 : A
void f();
};