Partilhar via


Tipo de '< NomeDeVariável >' não pode ser inferido de uma expressão que contém '< NomeDeVariável >'

O compilador não pode inferir o tipo de dados de uma variável se a variável for usada em estabelecer o valor inicial na declaração.

Por exemplo, com Option Infer definida como On, os exemplos a seguir não compilam:

  • Declarações

    ' Does not compile with Option Infer on.
    Dim m = m
    Dim d = someFunction(d)
    
  • For loop

    ' Does not compile with Option Infer on.
    For j = 1 To j
    Next
    
  • For Each loop

    ' Does not compile with Option Infer on.
    For Each customer In customer.Orders
    Next
    

ID de erro: BC30980

Para corrigir este erro

  • Se as duas variáveis pretendiam se referir a valores diferentes, altere o nome da variável que você está declarando.

  • Use um valor literal em vez do nome de variável no valor inicial, no o lado direito da atribuição.

  • Use uma cláusula As para especificar o tipo de variável que é declarado.

Consulte também

Conceitos

Inferência de tipos local

Referência

Instrução Dim (Visual Basic)

For each... Next demonstrativo (Visual Basic)

For... Next demonstrativo (Visual Basic)

Declaração Option Infer