Declaração Option Infer
Permite o uso de inferência de tipos locais ao declarar variáveis.
Option Infer { On | Off }
Partes
On
Opcional.Permite inferência de tipo local.Off
Opcional.Desabilita inferência de tipo local.
Observação: |
---|
Se você não especificar On ou Off, o padrão é On para projetos criados no Visual Basic 2008. O padrão é Offpara projetos melhorados de versões anteriores. |
Comentários
Quando se colca Option Infer para On, você pode declarar variáveis sem estabelecer explicitamente um tipo de dados.O compilador infere o tipo de dados de uma variável do tipo de sua expressão de inicialização.Por exemplo, com Option Infer e Option Strict em off, a variável na declaração Dim someVar = 2 é identificada apenas como um objeto.
IntelliSense quando Option Infer e Option Strict estão desligados.
Quando se coloca Option Infer em On, o compilador identifica someVar como um Integer.
IntelliSense quando Option Infer está ligado.
O compilador pode então detectar inconsistências no uso da variável no seu projeto que outros podem nao ter reconhecido até o projeto ser executado.Identificação de someVar como um Integer também permite o ambiente de desenvolvimento integrado (IDE) a prover total suporte a IntelliSense.
Observação: |
---|
Se você não especificar um valor para Option Infer em seu código ou no IDE, o compilador padrão é Option Infer On para projetos recém-criados. O padrão é Option Infer Offpara projetos melhorados. |
Observação: |
---|
Seu computador pode mostrar diferentes nomes ou localizações para alguns dos elementos de interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Configurações do Visual Studio. |
Colocando Option Infer em um arquivo
- Digite Option Infer On ou Option Infer Off no topo do arquivo, antes de qualquer outro código-fonte.Se o valor definido para Option Inferem um arquivo conflita com o valor definido no IDE ou na linha de comando, o valor no arquivo possui precedência.
Colocando Option Infer no IDE para um único projeto
Clique num projeto em Gerenciador de Soluções .
Abra o Project Designerclicando Property Pages no menu View.
Na guia Compile,na opção Option Infer, selecione On ou Off.
Estabelecendo o valor padrão para Option Infer no IDE
No menu Tools, clique em Options.
Expanda o nó Projects and Solutions.
Clique em VB Defaults.
Na lista Option Infer, clique On or Off.
Observação: Se você conjunto o valor Para Option Infer usando o Ferramentas menu, o valor serão mantidas por meio de projetos subseqüentes, a menos que você o altere.
Colocando Option Infer na linha de comando
- Inclua a opção de compilador /optioninfer no comando vbc.
Exemplo
O exemplo a seguir demonstra como a declaraçãoOption Infer permite inferência de tipo local.
' Enable Option Infer before trying these examples.
' Variable num is an Integer.
Dim num = 5
' Variable dbl is a Double.
Dim dbl = 4.113
' Variable str is a String.
Dim str = "abc"
' Variable pList is an array of Process objects.
Dim pList = Process.GetProcesses()
' Variable i is an Integer.
For i = 1 To 10
Console.WriteLine(i)
Next
' If CustomerList is a list of Customer objects,
' variable cust is an instance of the Customer class.
For Each cust In CustomerList
Console.WriteLine(cust.Name)
Next
' Variable namedCust is an instance of the Customer class.
Dim namedCust = New Customer With {.Name = "Lance Tucker", _
.City = "Seattle"}
' Variable product is an instance of an anonymous type.
Dim product = New With {Key .Name = "paperclips", Key .Price = 1.29}
' If customers is a collection of Customer objects in the following
' query, the inferred type of cust is Customer, and the inferred type
' of custs is IEnumerable(Of Customer).
Dim custs = From cust In customers _
Where cust.City = "Seattle" _
Select cust.Name, cust.ID
Consulte também
Conceitos
Referência
Instrução Dim (Visual Basic)
Opção Explicit demonstrativo (Visual Basic)