DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited on

Dica C#: Record Structs

Hoje, vamos explorar uma funcionalidade do C# 10: Record Structs. Essa novidade permite criar structs imutáveis com a simplicidade dos record types, mas com as características de valor dos structs. Veja o exemplo no código abaixo.

public readonly record struct Ponto(int X, int Y);

public class Program
{
    public static void Main()
    {
        Ponto ponto1 = new(10, 20);
        Ponto ponto2 = new(10, 20);

        Console.WriteLine(ponto1 == ponto2); // Saída: True
    }
}
Enter fullscreen mode Exit fullscreen mode

Explicação: Os Record Structs combinam a eficiência dos structs com as conveniências dos record types, como igualdade por valor e a sintaxe concisa. Eles são ideais para representar tipos de dados leves e imutáveis, que devem ser passados por valor.

Neste exemplo, criamos um record struct chamado Ponto. Como os record structs utilizam a igualdade por valor, ponto1 e ponto2 são considerados iguais, mesmo sendo instâncias diferentes, porque os valores de X e Y são iguais. Isso torna os record structs uma ótima escolha para tipos de dados imutáveis e eficientes.

Código fonte: GitHub

Espero que essa dica ajude você a utilizar os Record Structs de forma eficaz em seus projetos! Até a próxima.

Top comments (0)