Partilhar via


Tipos de dados do tipo parâmetro (s) não pode ser deduzido a partir desses argumentos

Mensagem de erro

Dados dos parâmetros de tipo não não possível inferir os tipos com desses argumentos.Especificando os dados tipos explicitamente podem corrigir esse erro.

Este erro ocorre quando a falha na resolução de sobrecarga.Ele ocorre sistema autônomo uma subordinada mensagem informando por que um candidato sobrecarga específica foi eliminado.A mensagem de erro explica que o compilador não é possível usar inferência de tipos de tipos para localizar os tipos de dados para os parâmetros de tipo.

Observação:

Quando especificar argumentos não é uma opção (por exemplo, para operadores de consulta em expressões de consulta), a mensagem de erro aparece sem a segunda sentença.

O código a seguir demonstra o erro.

Module Module1

    Sub Main()

        '' Not Valid.
        'OverloadedGenericMethod("Hello", "World")

    End Sub

    Sub OverloadedGenericMethod(Of T)(ByVal x As String, ByVal y As _
                                      InterfaceExample(Of T))
    End Sub

    Sub OverloadedGenericMethod(Of T, R)(ByVal x As T, ByVal y As _
                                         InterfaceExample(Of R))
    End Sub

End Module

Interface InterfaceExample(Of T)
End Interface

ID de erro: BC36647 e BC36644

Para corrigir este erro

  • Você poderá especificar um tipo de dados para o parâmetro de tipo ou parâmetros em vez de depender de inferência de tipos de tipos.

Consulte também

Conceitos

Conversão de delegado reduzida

Procedimentos Genéricos em Visual Basic

Outros recursos

Conversões de Tipo no Visual Basic