Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
/dynamicdeopt
derleyici anahtarı şu anda ÖNİzLEME aşamasındadır.
Bu bilgiler, yayından önce önemli ölçüde değiştirilebilen bir ön sürüm özelliğiyle ilgilidir. Microsoft, burada sağlanan bilgilerle ilgili olarak açık veya zımni hiçbir garanti vermez.
C++ Dinamik Hata Ayıklama (Önizleme) etkinleştirerek iyileştirilmiş kodun derlenmiş gibi hatalarını ayıklayabilir ve isteğe bağlı işlev kullanımdan kaldırma özelliğiyle her yere adım atabilirsiniz.
Sözdizimi
/dynamicdeopt
/dynamicdeopt:suffix <suffix>
/dynamicdeopt:sync
Tartışmalar
suffix
Açılmamış çıktı için dosya uzantısını belirtin.
Hiçbir seçenek olmadan ve giriş olarak test.cpp
verilmeyen çıkışınız test.obj
, test.exe
ve test.pdb
, test.alt.obj
, test.alt.exe
ve test.alt.pdb
içerir. Bu anahtar, iyileştirilmemiş ikili derleme yapıtlarının son ekini .alt
başka bir şeye değiştirmenize olanak tanır. Son eki değiştirirseniz, tüm dosyaların yeni son eki kullanması ve /dynamicdeopt:suffix
(Önizleme)kullanılarak bağlayıcıya geçirilen adla eşleşmesi gerekir. Sahip olduğunuz diğer dosyalarla dosya adı çakışmalarını önlemeniz gerekmedikçe genellikle bu anahtarı kullanmazsınız.
sync
İyileştirilmiş çıkışı paralel yerine derledikten sonra, iyileştirilmiş çıkışı derler. Varsayılan olarak, derleyici kod oluşturucunun paralel bir örneğini oluşturur. Bu anahtar, bunların bunun yerine seri olarak çalıştırılmasını sağlar. Bu anahtarın derleme ortamınıza daha uygun olması durumunda sağlanır.
Açıklamalar
Visual Studio 2022 Sürüm 17.14 Önizleme 2'den itibaren kullanılabilen bu önizleme bayrağı yalnızca x64 projeleri için geçerlidir ve ilgili bağlayıcı bayrağıyla (/DYNAMICDEOPT
) kullanılmalıdır.
/dynamicdeopt
ile derlemek, hata ayıklama için kullanılan diğer ikili dosyaları oluşturur. İyileştirilmiş bir dosyada iyileştirilmiş bir işlevin hatalarını ayıkladığınızda, hata ayıklayıcı bunun yerine alternatif ikili dosyaya girer. Bu, iyileştirilmiş kodun performans avantajlarını elde ederken iyileştirilmemiş kodda hata ayıklıyor gibi hata ayıklamanıza olanak tanır.
/dynamicdeopt
şunları gerektirir:
/DEBUG
veya /DEBUG:FULL
.
/DEBUG
belirtmezseniz veya /DEBUG:FASTLINK
belirtirseniz bağlayıcı önemli bir hata verir.
/INCREMENTAL
belirtirseniz, derleyici bir uyarı oluşturur ve /INCREMENTAL
otomatik olarak kapatır.
/OPT:ICF
belirtirseniz, derleyici hata ayıklama deneyiminin o kadar iyi olmadığını belirten bir uyarı oluşturur. Bunun nedeni ICF'nin işlevlerin alt dosyadan kaldırılmasına neden olabilmesi, bu da bunlara adım atamadığınız anlamına gelir.
IncrediBuild 10.24, C++ Dinamik Hata Ayıklama derlemelerini destekler.
FastBuild v1.15, C++ Dinamik Hata Ayıklama derlemelerini destekler.
/dynamicdeopt
düzenle ve devam et ile uyumsuzdur ve aşağıdaki derleyici anahtarları:
/GL
/ZI
/RTC1
/RTCs
/RTCc
/RTCu
/GH
/Gh
/fastcap
/callcap
/ZW
/fsanitize=address
/fsanitize=kernel-address
All of the CLR flags
Visual Studio geliştirme ortamında bu bağlayıcı seçeneğini ayarlayın
Bu anahtarı Visual Studio'da ayarlayabilirsiniz. Daha fazla bilgi için bkz. C++ Dinamik Hata Ayıklama (Önizleme). VISUAL Studio'da anahtarı ayarlamanın avantajları vardır çünkü MSBuild, /GL
ve /OPT:ICF
gibi uyumsuz anahtarlardan bazılarını otomatik olarak gizler. Ayrıca ilgili bağlayıcı seçeneğini (/DYNAMICDEOPT
) ayarlar. Anahtarı komut satırında da ayarlayabilirsiniz.
Bu derleyici seçeneğini program aracılığıyla ayarla
- Bkz. CompileAsManaged.
Ayrıca bkz.
C++ Dinamik Hata Ayıklama (Önizleme)
MSVC Derleyicisi Seçenekleri
MSVC Derleyicisi Komut Satırı Söz Dizimi