Erreur du compilateur C3228
'function' : l’argument de type générique de 'param' ne peut pas être 'type', il doit s’agir d’un type valeur ou d’un type de handle
Un type incorrect a été transmis comme argument de type générique.
L’exemple suivant génère l’erreur C3228 :
// C3228.cpp
// compile with: /clr
class A {};
value class B {};
generic <class T>
void Test() {}
ref class C {
public:
generic <class T>
static void f() {}
};
int main() {
C::f<A>(); // C3228
C::f<B>(); // OK
Test<C>(); // C3228
Test<C ^>(); // OK
}