Ler em inglês

Partilhar via


Erro do compilador CS0819

As variáveis digitadas implicitamente não podem ter vários declaradores.

Vários declaradores são permitidos em declarações de tipo explícitas, mas não com variáveis digitadas implicitamente.

Para corrigir este erro

Existem três opções:

  1. Se as variáveis forem do mesmo tipo, use declarações explícitas.
  2. Declare e atribua um valor a cada variável local digitada implicitamente em uma linha separada.
  3. Declare uma variável usando a sintaxe de desconstrução de Tuple. Nota: esta opção não funcionará dentro de uma using instrução, pois Tuple não implementa IDisposable.

Exemplo 1

O código a seguir gera CS0819:

// cs0819.cs
class Program
{
    public static void Main()
    {
        var a = 3, b = 2; // CS0819

        // First correction option.
        //int a = 3, b = 2;

        // Second correction option.
        //var a = 3;
        //var b = 2;

        // Third correction option.
        //var (a, b) = (3, 2);
    }
}

Exemplo 2

O código a seguir gera CS0819:

// cs0819.cs
class Program
{
    public static void Main()
    {
        using (var font1 = new Font("Arial", 10.0f),
            font2 = new Font("Arial", 10.0f)) // CS0819
        {
        }

        // First correction option.
        //using (Font font1 = new Font("Arial", 10.0f),
        //    font2 = new Font("Arial", 10.0f))
        //{
        //}

        // Second correction option.
        //using (var font1 = new Font("Arial", 10.0f)
        //{
        //    using (var font2 = new Font("Arial", 10.0f)
        //    {
        //    }
        //}
    }
}

Consulte também