Tópicos importantes de C#

Tipos de referência anuláveis em C#

Nesta lição, você vai usar tipos de referência anuláveis (nullable) para que o compilador ajude a encontrar os pontos em que um valor null pode aparecer.

Introdução

O erro NullReferenceException acontece quando você acessa uma variável que está com valor null, e é um dos erros mais comuns. O C# permite marcar explicitamente quais variáveis podem ser null com o sinal ?, como em string?. Assim, o compilador avisa se você usar essa variável sem verificar null antes.

A variável nickname tem o tipo string?, então pode valer null. O operador ?? (null-coalescing) retorna "Anonymous" se nickname for null, por isso displayName sempre tem um valor e acessar Length é seguro. O resultado impresso é Anonymous (9).

Exemplo de C# executável

C#
Rodar código →
Program.cs
using System;

class Program
{
    static void Main()
    {
        string? nickname = null;
        string displayName = nickname ?? "Anonymous";
        Console.WriteLine($"{displayName} ({displayName.Length})");
    }
}
Resultado da execução
Anonymous (9)

Pratique com o depurador

Coloque um breakpoint em uma atribuição ou condição importante, clique em Debug e veja os valores das variáveis locais antes de passar para a próxima linha.