Compartilhar via


Erro do compilador C3228

'function': o argumento de tipo genérico para 'param' não pode ser 'type', precisa ser um tipo de valor ou tipo de identificador

Um tipo incorreto foi passado como um argumento de tipo genérico.

O seguinte exemplo gera o erro 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
}