Baca dalam bahasa Inggris

Bagikan melalui


Compiler Error CS0819

Variabel yang memiliki jenis implisit tidak boleh memiliki beberapa deklarator.

Beberapa deklarator diizinkan dalam deklarasi jenis eksplisit, tetapi tidak dengan variabel yang memiliki jenis implisit.

Untuk memperbaiki kesalahan ini

Ada tiga opsi:

  1. Jika variabel memiliki jenis yang sama, gunakan deklarasi eksplisit.
  2. Deklarasikan dan tetapkan nilai untuk setiap variabel lokal yang memiliki jenis implisit pada baris terpisah.
  3. Deklarasikan variabel menggunakan sintaks dekonstruksi Tuple. Catatan: opsi ini tidak akan berfungsi di dalam pernyataan using karena Tuple tidak mengimplementasikan IDisposable.

Contoh 1

Kode berikut menghasilkan 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);
    }
}

Contoh 2

Kode berikut menghasilkan 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)
        //    {
        //    }
        //}
    }
}

Lihat juga