Hızlı Başlangıç: Visual Studio hata ayıklayıcısını kullanarak C++ ile hata ayıklama
Visual Studio hata ayıklayıcısı, uygulamalarınızda hata ayıklamanıza yardımcı olacak birçok güçlü özellik sağlar. Bu konu, bazı temel özellikleri öğrenmek için hızlı bir yol sağlar.
Yeni proje oluşturma
Visual Studio'yu açın ve bir proje oluşturun.
Başlangıç penceresini kapatmak için Esc tuşuna basın. Arama kutusunu açmak için Ctrl + Q yazın, c++ yazın, Şablonlar'ı ve ardından Yeni Konsol Uygulaması projesi oluştur'u seçin. Görüntülenen iletişim kutusunda Oluştur'u seçin.
Windows Konsol Uygulaması proje şablonunu görmüyorsanız Araçlar Araçları>ve Özellikleri Al...'e gidin ve Visual Studio Yükleyicisi açılır. Visual Studio Yükleyicisi başlatılır. C++ iş yüküyle Masaüstü geliştirme'yi ve ardından Değiştir'i seçin.
Visual Studio projeyi oluşturur.
MyDbgApp.cpp dosyasında aşağıdaki kodu değiştirin
int main() { return 0; }
bu kodla (kaldırmayın
#include "stdafx.h"
):#include <list> #include <iostream> using namespace std; void doWork() { list <int> c1; c1.push_back(10); c1.push_back(20); const list <int> c2 = c1; const int &i = c2.front(); const int &j = c2.front(); cout << "The first element is " << i << endl; cout << "The second element is " << j << endl; } int main() { doWork(); }
Kesme noktası ayarlama
Kesme noktası, değişkenlerin değerlerine, bellek davranışına veya bir kod dalının çalıştırılıp çalıştırılmadığına bakabilmeniz için Visual Studio'nun çalışan kodunuzu nerede askıya alması gerektiğini gösteren bir işaretçidir. Hata ayıklamanın en temel özelliğidir.
Kesme noktasını ayarlamak için işlev çağrısının sol
doWork
kısmındaki olukta tıklayın (veya kod satırını seçip F9 tuşuna basın).Şimdi F5 tuşuna basın (veya Hata Ayıklamayı > Başlat Hata Ayıklama'yı seçin ).
Hata ayıklayıcı, kesme noktasını ayarladığınız yerde duraklatılır. Hata ayıklayıcının ve uygulama yürütmenin duraklatıldığı deyim sarı okla gösterilir. İşlev çağrısına
doWork
sahip satır henüz yürütülmedi.Bahşiş
Döngüde veya özyinelemede kesme noktanız varsa veya sık sık ilerlediğiniz çok sayıda kesme noktanız varsa, kodunuzun YALNIZCA belirli koşullar karşılandığında askıya alınmasını sağlamak için koşullu kesme noktası kullanın. Koşullu kesme noktası zamandan tasarruf sağlar ve yeniden oluşturması zor olan sorunların hatalarını ayıklamayı da kolaylaştırabilir.
C++'ta bellekle ilgili hatalarda hata ayıklamaya çalışırken, adres değerlerini (NULL araması) ve başvuru sayılarını incelemek için kesme noktalarını da kullanabilirsiniz.
Kodda gezinme
Hata ayıklayıcıya devam etme talimatı veren farklı komutlar vardır. Visual Studio 2017'den itibaren kullanılabilen kullanışlı bir kod gezinti komutu gösteriyoruz.
Kesme noktasında duraklatılırken, yeşil Tıklamak için çalıştır düğmesi görünene kadar deyimin c1.push_back(20)
üzerine gelin ve tıklamak için Çalıştır düğmesine basın.
Uygulama yürütmeye, çağrısına doWork
devam eder ve düğmeye tıkladığınız kod satırında duraklatılır.
Kodda adım adım ilerletmek için kullanılan yaygın klavye komutları arasında F10 ve F11 bulunur. Daha ayrıntılı yönergeler için bkz . Hata ayıklayıcıya ilk bakış.
Veri ipucundaki değişkenleri inceleme
Geçerli kod satırında (sarı yürütme işaretçisi ile işaretlenmiş), bir veri ipucu göstermek için farenizle nesnenin
c1
üzerine gelin.Veri ipucu, değişkenin geçerli değerini
c1
gösterir ve özelliklerini incelemenize olanak tanır. Hata ayıklarken, beklemediğiniz bir değer görürseniz, büyük olasılıkla yukarıdaki kod satırlarında veya çağrı satırlarında bir hata vardır.Nesnenin geçerli özellik değerlerine bakmak için veri ipucunun
c1
kapsamını genişletin.Kodu yürütürken değerini
c1
görmeye devam edebilmeniz için veri ipucuna sabitlemek istiyorsanız küçük raptiye simgesine tıklayın. (Sabitlenmiş veri ipucunun uygun bir konuma taşınmasını sağlayabilirsiniz.)
Kodu düzenleme ve hata ayıklamaya devam etme
Hata ayıklama oturumunun ortasındayken kodunuzda test etmek istediğiniz bir değişikliği tanımlarsanız, bunu da yapabilirsiniz.
öğesinin ikinci örneğine
c2.front()
tıklayın ve olarakc2.back()
değiştirinc2.front()
.Hata ayıklayıcıyı ilerletmek ve düzenlenen kodu yürütmek için F10'a (veya Hata Ayıklama > Adımı üzerinde) birkaç kez basın.
F10 , hata ayıklayıcıyı bir kerede bir deyimi ilerletir, ancak işlevlere adım atmak yerine işlevlerin üzerinde adım atar (atladığınız kod yine de yürütülür).
Düzenle ve devam et ve özellik sınırlamalarını kullanma hakkında daha fazla bilgi için bkz . Düzenle ve Devam Et.
Sonraki adımlar
Bu öğreticide hata ayıklayıcıyı başlatmayı, kodda adım adım ilerleyip değişkenleri incelemeyi öğrendiniz. Daha fazla bilgi için bağlantılarla birlikte hata ayıklayıcısı özelliklerine üst düzey bir bakış elde etmek isteyebilirsiniz.