Dica C#: Ref Locals and Returns

Juarez Júnior - Sep 5 - - Dev Community

Vamos falar sobre Ref Locals and Returns, introduzidos no C# 7, que permitem que métodos retornem referências a variáveis, permitindo a manipulação direta do valor original. Veja o exemplo no código abaixo.

using System;

public class Program
{
    public static void Main()
    {
        int[] numeros = { 10, 20, 30 };

        // Obtém uma referência ao segundo elemento do array e modifica seu valor
        ref int referencia = ref ObterReferencia(numeros, 1);
        referencia = 50;

        Console.WriteLine(string.Join(", ", numeros)); // Saída: 10, 50, 30
    }

    public static ref int ObterReferencia(int[] array, int indice)
    {
        return ref array[indice]; // Retorna a referência ao elemento do array
    }
}
Enter fullscreen mode Exit fullscreen mode

Explicação:
Com Ref Locals and Returns, você pode retornar referências para variáveis em vez de seus valores. Isso permite que você manipule diretamente a variável original, sem criar cópias. No exemplo acima, mostramos como retornar e modificar uma referência a um elemento de um array diretamente.

Código fonte: GitHub

Espero que essa dica ajude você a entender como utilizar Ref Locals and Returns para manipular dados diretamente e de forma eficiente! Até a próxima.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player