Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
argumento de tipo genérico para 'arg' não pode ser 'type', deve ser um tipo de valor ou um tipo de identificador
Observações
O argumento de tipo genérico não era do tipo correto.
Para obter mais informações, consulte Genéricos.
Exemplos
Você não pode criar uma instância de um tipo genérico com um tipo nativo. O exemplo a seguir gera C3225.
// C3225.cpp
// compile with: /clr
class A {};
ref class B {};
generic <class T>
ref class C {};
int main() {
C<A>^ c = gcnew C<A>; // C3225
C<B^>^ c2 = gcnew C<B^>; // OK
}
O exemplo a seguir cria um componente usando C#. Observe que a restrição especifica que o tipo genérico só pode ser instanciado com um tipo de valor.
// C3225_b.cs
// compile with: /target:library
// a C# program
public class MyList<T> where T: struct {}
Este exemplo consome o componente criado por C#e viola a restrição de que MyList só pode ser instanciado com um tipo de valor diferente de Nullable. O exemplo a seguir gera C3225.
// C3225_c.cpp
// compile with: /clr
#using "C3225_b.dll"
ref class A {};
value class B {};
int main() {
MyList<A> x; // C3225
MyList<B> y; // OK
}