Aracılığıyla paylaş


Ortak ifade değerlendirici özellikleri

Bu konu yalnızca dil değişen hata ayıklayıcı, ortak olan çeşitli ifade değerlendirici özellikleri açıklar.

Örtülü değişkenleri

Visual Basic ve C#, oluşturma örtülü değişkenleri ifade değerlendirici kullanarak.Örtülü Bu değişkenler hiçbir zaman kapsam dýþýna çýkar ve başka bir değişken kabul edilir.

C#, kapalı bir değişken ifade değerlendirici bildirerek oluşturabilirsiniz.Örneğin, aşağıdaki C# kodu girin hemen pencere:

int b = 100;

Bu kod yürütme zaman hemen yeni örtülü değişkeni penceresinde görünür Locals $ işareti önde değişken adını, bu durumda, pencere $b.

Visual Basic'te, ifade değerlendirici örtülü değişkenlerin bildirimini yapamazsınız.Ancak, Visual Basic, ifade değerlendirici bildirilmemiş bir değişken kullanırsanız, örtülü bir değişkeni otomatik olarak oluşturulur.Visual Basic'te, örtülü değişkenlerini listelenmeyen Locals pencere.

Kesme Noktaları

Komut penceresi, Visual Basic veya C# yöntemi veya işlevi içeren bir kesme noktası değerlendirmek için kullanırsanız, kesme noktasını isabet ve yeni bir çerçeve görünür Call Stack.C# örneği aşağıdadır:

    class Program
    {
        static void Main(string[] args)
        {
// Breakpoint here:
             int a = 20;
         }
    }

Burada yorum gösterir bir kesme noktası ayarlamak, derlemek ve F5 tuşuna basarak program yürütme, düzenli bir şekilde kesme isabet.Şimdi yöntemi değerlendirmek, Main yazarak Program.Main(null) içine hemen penceresinde kesme ikinci kez ziyaret ve üzerinde yöntemi için bir girdi olacaktır Call Stack.

Gözcü penceresinde değerlendirme

Olası istenmeyen yan etkileri önlemek için bir işlev veya yöntem çağrısı otomatik olarak her zaman değerlendirilir değildir, hata ayıklayıcı adımları.Bunun yerine bir simge sonucu el ile güncelleştirmek etkinleştirir.Görünen değeri sütun.El ile arama değerlendirmek etkinleştirir.Daha fazla bilgi için bkz. Yan etkileri ve deyimler.

Nesne kimliği

Bu özellik kullanılamaz Visual Basic.

Bazı uygulamalar, birçok sınıfın örneklerini oluşturun.Bu uygulamaların belirli bir sınıfın örneğini ayırmak için bir tanımlayıcı sık sık yararlı olur.Bu örnek, belirli bir sınıfın örneğini beklendiği gibi çalışmıyorsa veya belirli bir örneği birden çok kez yalnızca bir kez yer alacağı bir koleksiyona eklenen yararlı olabilir.

ms164903.collapse_all(tr-tr,VS.110).gifÖzgün nesne kimliği

Yönetilmeyen kod hata ayıklama sırasında adresini kullanarak nesneyi benzersiz şekilde tanımlayabilirsiniz.Bu iki nedenle önemlidir:

  • Bir nesnenin adresini kullanarak izleyebilirsiniz.Bu bir adresi kullanmak becerisine sahiptir:

    • Bu adreste nesnesinin değerini görüntüleyin.

    • Eşitlik için denetleyin.Sık sık adres bir nesne için nesne değişkeni aynı şekilde kullanılabilir.

  • Bu örneği yönteminde kesme noktası ayarlamak için bir nesne örneği adresini kullanabilirsiniz.

    Örneğin, bir nesne sınıfının bir örneği olan olduğunu varsayalım CMyType, adresi 0xcccccccc.İşlev kesme yöntemini belirtmek aMethod , örnek aşağıdaki gibi:

    ((CMyType *) 0xcccccccc)->aMethod

ms164903.collapse_all(tr-tr,VS.110).gifYönetilen nesne kimliği

Yönetilen kod ile bunu tanımlamak üzere nesnenin adresi kullanamazsınız.Bunun yerine, hata ayıklama Hizmetleri ortak dil çalışma zamanı tarafından (clr) oluşturulan ve nesne ile ilişkilendirilmiş nesne kimliği olarak bilinen bir tamsayı kullanın.Bu numara, clr hata ayıklama Hizmetleri tarafından oluşturulan pozitif bir tamsayıdır.Nesne Kimliği değeri nesneyi benzersiz olarak tanımlayan dışında hiçbir önemi vardır.

Nesne tanıtıcıları, sayı işareti ile değişken uzunluklu, ondalık tamsayı olarak görüntülenir (#) geçtikten sonra, Baştaki sıfırları olmadan gibi eklenen 5#.Tutamaçları görünür değeri sütun farklı hata ayıklayıcı verileri Windows.

Bir nesne kimliği için bir değişken oluşturmak için değişkeni sağ tıklatın ve seçin Nesne kimliği olun.Hata ayıklayıcı pound sayıyla görüntüler (#) işareti gibi bundan sonra eklenen 123#.Nesne kimliği silmek için değişkeni sağ tıklatın ve seçin Nesne kimliği silmek.

Bir kesme noktasına gelindiğinde, bir değişkenin tanıtıcı yazın İzle pencere.Hata ayıklayıcı nesne kimliği değerini görüntüler ve genişletin ve diğer değişken gibi inceleyin.

Nesne kimliği, belirli bir örnek yöntemi üzerinde kesme noktası ayarlamak için kullanabilirsiniz.Örneğin, bir nesne sınıfının bir örneği olan olduğunu varsayalım CMyType, ve örnek nesne kimliği yok 5#.Sınıf CMyType bir yöntemi içeren aMethod.İşlev kesme yöntemini ayarlamak aMethod örneğinin 5# gibi:

((CMyType) 5#).aMethod

Bir kesme noktası koşulunda nesne kimliği de kullanabilirsiniz.Aşağıdaki örnek, nasıl bir koşul nesne kimliği test edebilirsiniz gösterir.

this == 5#

Kesme noktası koşul belirtme hakkında daha fazla bilgi için bkz: Nasıl yapılır: bir kesme noktası koşulunu belirtin.

Ayrıca bkz.

Kavramlar

Hata ayıklayıcıda verileri görüntüleme

Diğer Kaynaklar

Hata Ayıklayıcı'daki ifadeler

Hata ayıklayıcı Yol Haritası