Поделиться через


Тип <имяПеременной> не может быть получен из выражения, содержащего <имяПеременной>

Обновлен: Ноябрь 2007

Type of '<variablename>' cannot be inferred from an expression containing '<variablename>'

Компилятор не может определить тип данных переменной, если начальное значение переменной устанавливается в ее объявлении.

Например, с параметром Option Infer, равным On, следующие примеры не будут откомпилированы.

  • Объявления

    ' Does not compile with Option Infer on.
    Dim m = m
    Dim d = someFunction(d)
    
  • Цикл For

    ' Does not compile with Option Infer on.
    For j = 1 To j
    Next
    
  • Цикл For Each

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

Идентификатор ошибки: BC30980

Исправление данной ошибки

  • Если две переменные были предназначены для ссылки на различные значения, измените имена объявленных переменных.

  • Используйте значение литерала вместо имени переменной при установке значения в правой части назначения.

  • Используйте предложение As, чтобы указать тип объявляемой переменной.

См. также

Основные понятия

Вывод локального типа

Ссылки

Оператор Dim (Visual Basic)

Инструкция For Each... Next (Visual Basic)

Инструкция For... Next (Visual Basic)

Оператор Option Infer