Valores padrão de tipos C# (referência C#)
A tabela a seguir mostra os valores padrão dos tipos de C#:
Type | Default value |
---|---|
Qualquer tipo de referência | null |
Qualquer tipo numérico integral incorporado | 0 (zero) |
Qualquer tipo numérico de ponto flutuante incorporado | 0 (zero) |
Bool | false |
char | '\0' (U+0000) |
enum | O valor produzido pela expressão (E)0 , onde E é o identificador de enum. |
estruturar | O valor produzido definindo todos os campos de tipo de valor como seus valores padrão e todos os campos de tipo de referência como null . |
Qualquer tipo de valor anulável | Uma instância para a qual a HasValue propriedade é false e a Value propriedade é indefinida. Esse valor padrão também é conhecido como o valor nulo de um tipo de valor anulável. |
Expressões de valor padrão
Use o default
operador para produzir o valor padrão de um tipo, como mostra o exemplo a seguir:
int a = default(int);
Você pode usar o default
literal para inicializar uma variável com o valor padrão de seu tipo:
int a = default;
Construtor sem parâmetros de um tipo de valor
Para um tipo de valor, o construtor implícito sem parâmetros também produz o valor padrão do tipo, como mostra o exemplo a seguir:
var n = new System.Numerics.Complex();
Console.WriteLine(n); // output: (0, 0)
Em tempo de execução, se a System.Type instância representa um tipo de valor, você pode usar o Activator.CreateInstance(Type) método para invocar o construtor sem parâmetros para obter o valor padrão do tipo.
Nota
Em C# 10 e posterior, um tipo de estrutura (que é um tipo de valor) pode ter um construtor sem parâmetros explícito que pode produzir um valor não padrão do tipo. Assim, recomendamos usar o default
operador ou o default
literal para produzir o valor padrão de um tipo.
Especificação da linguagem C#
Para obter mais informações, consulte as seguintes seções da especificação da linguagem C#:
- Valores padrão
- Construtores padrão
- C# 10 - Construtores struct sem parâmetros
- C# 11 - Estruturas padrão automática
Consulte também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários