C# · Essencial · Inglês · Técnico
var
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.