Declarar variáveis locais digitadas implicitamente

Concluído

O compilador C# trabalha nos bastidores para ajudá-lo enquanto você escreve seu código. Pode deduzir o tipo de dados da variável através do valor inicializado. Nesta unidade, irá aprender sobre esta funcionalidade, denominada variáveis locais escritas implicitamente.

O que são variáveis locais escritas implicitamente?

Uma variável local digitada implicitamente é criada usando a var palavra-chave seguida por uma inicialização de variável. Por exemplo:

var message = "Hello world!";

Neste exemplo, uma variável string foi criada usando a var palavra-chave em vez da string palavra-chave.

A var palavra-chave informa ao compilador C# que o tipo de dados está implícito no valor atribuído. Depois que o tipo é implícito, a variável age como se o tipo de dados real tivesse sido usado para declará-lo. A var palavra-chave é usada para salvar pressionamentos de teclas quando os tipos são longos ou quando o tipo é óbvio a partir do contexto.

No exemplo:

var message = "Hello world!";

Como a variável message é imediatamente definida como o valor"Hello World!", o string compilador C# entende a intenção e trata cada instância de message como uma instância do tipostring.

Na verdade, a variável é digitada message para ser um string e nunca pode ser alterada. Por exemplo, considere o seguinte código:

var message = "Hello World!";
message = 10.703m;

Se executar este código, verá a seguinte mensagem de erro.

(2,11): error CS0029: Cannot implicitly convert type 'decimal' to 'string'

Nota

Outras linguagens utilizam a palavra-chave var de forma diferente. Em C#, as variáveis recebem um tipo pelo compilador, independentemente de você usar o nome real do tipo de dados ou permitir que o compilador implique o tipo de dados. Por outras palavras, o tipo é bloqueado no momento da declaração e, portanto, nunca poderá conter valores de um tipo de dados diferente.

As variáveis que usam a var palavra-chave devem ser inicializadas

É importante compreender que a palavra-chave var depende do valor utilizado para inicializar a variável. Se tentar utilizar a palavra-chave var sem inicializar a variável, receberá um erro quando tentar compilar o seu código.

var message;

Se você tentar executar esse código, à medida que ele é compilado, você verá a seguinte saída:

(1,5): error CS0818: Implicitly-typed variables must be initialized

Porquê utilizar a palavra-chave var?

A var palavra-chave foi amplamente adotada na comunidade C#. É provável que, se você olhar para um exemplo de código em um livro ou online, verá a var palavra-chave usada em vez do nome real do tipo de dados, por isso é importante entender seu uso.

A var palavra-chave tem um uso importante em C#. Muitas vezes, o tipo de uma variável é óbvio a partir de sua inicialização. Nesses casos, é mais simples usar a var palavra-chave. A var palavra-chave também pode ser útil ao planejar o código para um aplicativo. Quando você começa a desenvolver código para uma tarefa, talvez não saiba imediatamente qual tipo de dados usar. O uso var pode ajudá-lo a desenvolver sua solução de forma mais dinâmica.

Ao começar, é recomendável que você continue a usar o nome do tipo de dados real ao declarar variáveis até se sentir mais confortável em trabalhar com código. Utilizar o tipo de dados ao declarar variáveis ajudará a tornar a escrita do código intencional.

Recapitulação

Aqui está o que você aprendeu sobre a var palavra-chave até agora:

  • A palavra-chave var informa o compilador para deduzir o tipo de dados da variável com base no valor para o qual é inicializada.
  • Você provavelmente verá a palavra-chave ao ler o código de outras pessoas, no entanto, você deve usar o var tipo de dados quando possível.