Erro do Compilador CS0451
A restrição 'new()' não pode ser usada com a restrição 'struct'
Ao especificar restrições no tipo de um genérico, a restrição new()
só pode ser usada com restrições de tipo de classe, restrições de tipo de interface, restrições de tipo de referência e restrições de parâmetro de tipo, mas não com restrições de tipo de valor.
O exemplo a seguir gera o erro CS0451:
// CS0451.cs
using System;
public class C4
{
public void F4<T>() where T : struct, new() {} // CS0451
}
// OK
public class C5
{
public void F5<T>() where T : struct {}
}
public class C6
{
public void F6<T>() where T : new() {}
}
Colaborar conosco no GitHub
A fonte deste conteúdo pode ser encontrada no GitHub, onde você também pode criar e revisar problemas e solicitações de pull. Para obter mais informações, confira o nosso guia para colaboradores.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: