Aracılığıyla paylaş


is (C# Başvurusu)

Nesneyi belirli bir türü ile uyumlu olup olmadığını denetler.Örneğin, aşağıdaki kod bir nesne örneği olup olmadığını belirleyebilir MyObject türü veya türetildiği bir tür MyObject:

if (obj is MyObject)
{
}

Bir is deyimi değerlendirir için true sağlanan ifade null olmayan bir özel durum neden olmadan sağlanan türü için sağlanan nesne çevrilebilir ise.

is Anahtar sözcüğünü ifade her zaman için bilinen, derleme zamanı uyarı neden true ya da her zaman için false, ancak genellikle yazın uyumluluğu zamanında değerlendirir.

is Operatör olamaz aşırı.

Dikkat is işleci yalnızca başvuru dönüşümler, kutulama dönüşümleri ve kutulama dönüşümleri düşünür.Kullanıcı tanımlı dönüştürme gibi diğer dönüşümler dikkate alınmaz.

Adsýz yöntemler sol tarafında verilmez is işleci.Bu özel lambda ifadeleri içerir.

Örnek

class Class1 {}
class Class2 {}
class Class3 : Class2 { }

class IsTest
{
    static void Test(object o)
    {
        Class1 a;
        Class2 b;

        if (o is Class1)
        {
            Console.WriteLine("o is Class1");
            a = (Class1)o;
            // Do something with "a."
        }
        else if (o is Class2)
        {
            Console.WriteLine("o is Class2");
            b = (Class2)o;
            // Do something with "b."
        }

        else
        {
            Console.WriteLine("o is neither Class1 nor Class2.");
        }
    }
    static void Main()
    {
        Class1 c1 = new Class1();
        Class2 c2 = new Class2();
        Class3 c3 = new Class3();
        Test(c1);
        Test(c2);
        Test(c3);
        Test("a string");
    }
}
/*
Output:
o is Class1
o is Class2
o is Class2
o is neither Class1 nor Class2.
*/

C# dil belirtiminin

Daha fazla bilgi edinmek için, bkz. C# Dil Belirtimi. Dil belirtimi, C# sözdizimi ve kullanımı için kesin bir kaynaktır.

Ayrıca bkz.

Başvuru

C# Anahtar Sözcükleri

typeof (C# Başvurusu)

as (C# Başvurusu)

İşleç Anahtar Sözcükleri (C# Başvurusu)

Kavramlar

C# Programlama Kılavuzu

Diğer Kaynaklar

C# Başvurusu