Leer en inglés

Compartir a través de


Error del compilador CS0819

Las variables con tipo implícito no pueden tener varios declaradores.

El uso de varios declaradores está permitido en declaraciones de tipo explícito, pero no con variables de tipo implícito.

Para corregir este error

Hay tres opciones:

  1. Si las variables son del mismo tipo, use declaraciones explícitas.
  2. Declare y asigne un valor a cada variable local con tipo implícito en una línea independiente.
  3. Declare una variable mediante la sintaxis de deconstrucción de tupla. Nota: esta opción no funcionará dentro de una instrucción using, ya que Tuple no implementa IDisposable.

Ejemplo 1

El código siguiente genera el error CS0819:

C#
// 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);
    }
}

Ejemplo 2

El código siguiente genera el error CS0819:

C#
// 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 también