ExpertiDict

C# · Essencial · Inglês · Técnico

var

/vɑr/palavra-chave

Palavra-chave que pede ao compilador para inferir o tipo de uma variável local a partir da expressão de inicialização; o tipo continua estático e fixo.

Onde usar

Em code review o time decide quando var é legível: ótimo com new Cliente() ou tipos anônimos, ruim quando o tipo do lado direito não é óbvio. Tipos anônimos de LINQ só podem ser guardados com var.

Em código

var nome = "Ana";
var itens = new List<int>();
var p = new { Id = 1, Nome = nome };
// nome = 42;  // erro: int não é string
Console.WriteLine(p.Nome + itens.Count);

Exemplos

I use var when the type is obvious from the constructor.

Uso var quando o tipo é óbvio pelo construtor.

You can't use var without an initializer.

Você não pode usar var sem um inicializador.

Cuidado

Não é tipagem dinâmica como dynamic ou o var do JavaScript: depois de inferido, o tipo nunca muda.

Sinônimos

inferência de tipo local

Antônimos

tipo explícito

Origem

Abreviação de variable.

Veja também

Todos os termos de C#