C/C++ için kod analizine genel bakış
C/C++ Kod Analizi aracı, C/C++ kaynak kodunuzdaki olası hatalarla ilgili bilgi sağlar. Araç tarafından bildirilen yaygın kodlama hataları arabellek taşmalarını, başlatılmamış belleği, null işaretçi başvurularını ve bellek ve kaynak sızıntılarını içerir. Araç, C++ Çekirdek Yönergelerine göre denetimler de çalıştırabilir.
IDE (tümleşik geliştirme ortamı) tümleştirmesi
Kod çözümleme aracı, Visual Studio IDE ile tamamen tümleşiktir.
Derleme işlemi sırasında, kaynak kod için oluşturulan tüm uyarılar Hata Listesi'nde görünür. Uyarıya neden olan kaynak koduna gidebilir ve sorunun nedeni ve olası çözümleri hakkında ek bilgileri görüntüleyebilirsiniz.
Komut satırı desteği
Aşağıdaki örnekte gösterildiği gibi, komut satırından analiz aracını da kullanabilirsiniz:
C:\>cl /analyze Sample.cpp
Visual Studio 2017 sürüm 15.7 ve üzeri: Aracı komut satırından CMake de dahil olmak üzere herhangi bir derleme sistemiyle çalıştırabilirsiniz.
#pragma desteği
Uyarılara hata muamelesi #pragma
yapmak, uyarıları etkinleştirmek veya devre dışı bırakmak ve tek tek kod satırları için uyarıları bastırmak için yönergesini kullanabilirsiniz. Daha fazla bilgi için bkz . Pragma yönergeleri ve __pragma
ve _Pragma
anahtar sözcükleri.
Ek açıklama desteği
Ek açıklamalar kod analizinin doğruluğunu artırır. Ek açıklamalar, işlev parametreleri ve dönüş türleriyle ilgili ön ve son koşullar hakkında ek bilgi sağlar. Daha fazla bilgi için bkz . C/C++ Kod Hatalarını Azaltmak için SAL Ek Açıklamalarını Kullanma.
İade ilkesinin bir parçası olarak çözümleme aracını çalıştırma
Tüm kaynak kodu iadelerinin belirli ilkeleri karşılamasını zorunlu kılmasını isteyebilirsiniz. Özellikle, çözümlemenin en son yerel derlemenin bir adımı olarak çalıştırıldığından emin olmak istiyorsunuz. Kod analizi iade ilkesini etkinleştirme hakkında daha fazla bilgi için bkz . Kod Analizi İade İlkelerini Oluşturma ve Kullanma.
Ekip Derlemesi tümleştirmesi
Azure DevOps derleme işleminin bir adımı olarak kod analizi aracını çalıştırmak için derleme sisteminin tümleşik özelliklerini kullanabilirsiniz. Daha fazla bilgi için bkz . Azure Pipelines.
Ayrıca bkz.
- Hızlı Başlangıç: C/C++ için kod analizi
- İzlenecek yol: Hatalara yönelik C/C++ Kodunu Analiz Etme
- C/C++ İçin Kod Analizi Uyarıları
- C++ Temel Yönergeleri denetleyicilerini kullanma
- C++ Temel Kılavuz Denetleyicisi Başvurusu
- Çalıştırılacak C++ kurallarını belirtmek için kural kümelerini kullanma
- Kod Çözümleme Araçlarını Kullanarak Sürücü Kalitesini Analiz Etme
- Sürücü Uyarıları için Kod Analizi