um. var mágico
Uma declaração de variável var foi adicionada no C# 3.0. Esta declaração é semelhante à var do JavaScript, mas também é diferente.
1. No mesmo ponto, pode usar var para declarar qualquer tipo de variável local.
2. A diferença é que ele é responsável apenas por informar ao compilador que a variável precisa inferir o tipo da variável com base na expressão de inicialização, podendo ser apenas uma variável local.
dois. Semelhanças
pode ser declarado
var inteiro = 10;
var nome = "edisundong";
var números = new int[] { 1, 2, 3 };
três. Diferenças
var é apenas uma palavra-chave. Não é um novo tipo em C# 3.0. É responsável por informar ao compilador que a variável precisa inferir o tipo da variável com base na expressão de inicialização.
inteiro inteiro = 10;
string nome = "edisundong";
int[] números = new int[] { 1, 2, 3 };
três. Observação
1. Deve ser atribuído um valor no momento da declaração, pois a declaração depende da expressão à direita do número de atribuição Caso haja a seguinte instrução:
var inteiro;
inteiro = 10;
Um erro de locais digitados implicitamente devem ser inicializados será relatado durante a compilação.
2. Depois de usar var para declarar uma variável local, ela ainda possui um tipo forte e pode ser testada da seguinte forma:
var inteiro = 10;
inteiro = "edisundong";
Um erro Não é possível converter implicitamente o tipo 'string' em 'int' será relatado durante a compilação.
3. O tipo de tempo de compilação da expressão inicializadora não pode ser do tipo vazio (nulo). O compilador não pode inferir o tipo de variáveis locais com base em nulo, como a seguinte instrução:
var inteiro = nulo;
Não é possível atribuir '<nulo>' a um erro local digitado implicitamente, o erro será relatado durante a compilação.
4. A instrução de inicialização deve ser uma expressão. A expressão de inicialização não pode conter a si mesma, mas pode ser uma nova expressão (ou seja, tipo anônimo) contendo um inicializador de objeto ou coleção.
Por exemplo, você pode declará-lo assim:
var coll = new Hashtable();
5. A declaração de var é limitada a variáveis locais e também pode ser incluída em instruções foreach, for e using. O seguinte uso está incorreto:
programa de aula
{
private var i = 10; //Variáveis privadas globais.
vazio estático principal(string[] args)
{ }
}
A palavra-chave contextual 'var' pode aparecer apenas dentro de uma declaração de variável local. O erro será relatado durante a compilação.
Este artigo vem do blog CSDN. Por favor, indique a fonte ao reimprimir: http://blog.csdn.net/superyoungchaos/archive/2009/12/23/5060696.aspx .