Aracılığıyla paylaş


/sdl (Ek Güvenlik Denetimlerini Etkinleştir)

Önerilen güvenlik geliştirme yaşam döngüsü (SDL) denetimleri ekler.Bu denetimler, ek güvenlik ilgili uyarıları hatalar ve ek güvenli kod oluşturma özellikleri olarak içerir.

/sdl[-]

Notlar

/sdl taban çizgisini güvenlik denetimleri tarafından sağlanan bir üst sağlar /GS ve geçersiz kılmaları /GS-.Varsayılan olarak, /sdl kapalıdır./sdl- ek güvenlik denetimleri devre dışı bırakır.

Derleme zamanı denetler

/sdl Bu uyarılar hata olarak sağlar:

Uyarı tarafından /SDL etkin

Eşdeğer komut satırı anahtarı

Açıklama

C4146

/we4146

İmzasız bir sonucu elde edilen bir işaretsiz tür için bir birli işleç eksi uygulandı.

C4308

/we4308

İşaretsiz tür, büyük olasılıkla anlamsız sonucunda elde edilen negatif bir tam sayı sabit dönüştürülür.

C4532

/we4532

Kullanım continue, break veya goto anahtar kelimeleri bir __finally/finally Blok sırasında normal olmayan sonlandırma davranışı tanımlanmamış.

C4533

/we4533

Kod bir değişken başlatılıyor yürütülmez.

C4700

/we4700

Başlatılmamış bir yerel değişken kullanın.

C4703

/we4703

Olası başlatılmamış yerel işaretçi değişkeni kullanın.

C4789

/we4789

Belirli C çalışma zamanı (CRT) işlevleri kullanıldığında taşması.

C4995

/we4995

Bir işlev kullanımını pragması ile işaretlenmiş kullanım dışı.

C4996

/we4996

Bir işlev kullanımını işaretlenmiş olarak kullanım dışı.

Çalışma zamanı denetler

Zaman /sdl olan etkinleştirilmiş derleyici bu denetimler, çalışma zamanında gerçekleştirmek için kod oluşturur:

  • Katı modu sağlar /GS çalışma zamanı arabellek taşması algılama, ile derlenen eşdeğer #pragma strict_gs_check(push, on).

  • Sınırlı işaretçi sanitization gerçekleştirir.Değil kapsayan ifadelerinde dereferences ve hiçbir kullanıcı tarafından tanımlanan yok edici sahip türlerinde işaretçi başvuruları için geçerli olmayan bir adresi bir çağrı sonra delete.Bu eski işaretçi başvuruları yeniden önlemeye yardımcı olur.

  • Sınıf üye başlatma gerçekleştirir.Tüm sınıf üyeleri (önce Oluşturucu döngülerinden) nesne örneğini oluşturmada sıfır olacak şekilde otomatik olarak başlatır.Bu oluşturucu açıkça başlatılmaz sınıf üyeleri ile ilişkili başlatılmamış veri kullanımını engeller.

Açıklamalar

Daha fazla bilgi için Uyarıları, /sdl ve başlatılamayan değişkeni algılama geliştirme.

Bu derleyici seçeneğini Visual Studio geliştirme ortamında ayarlamak için

  1. Projenin açmak özellik sayfaları iletişim kutusu.Ayrıntılı bilgi için bkz: Nasıl Yapılır: Proje Özellik Sayfalarını Açma.

  2. Seçin C/C++ klasör.

  3. Üzerinde Genel sayfasında, ilgili seçeneği seçin SDL denetimleri açılır listesi.

Ayrıca bkz.

Başvuru

Derleyici Seçenekleri

Derleyici Seçeneklerini Ayarlama