Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Fontos
A /dynamicdeopt fordítókapcsoló jelenleg előzetes verzióban érhető el.
Ezek az információk egy előzetes funkcióra vonatkoznak, amely a kiadás előtt jelentősen módosulhat. A Microsoft nem vállal kifejezett vagy hallgatólagos szavatosságot az itt megadott információkra vonatkozóan.
Engedélyezze C++ dinamikus hibakeresési (előzetes verzió), hogy az optimalizált kódot úgy lehessen hibakeresésre használni, mintha optimalizált volna, és igény szerinti függvény-deoptimizálással bárhol elvégezheti a lépéseket.
Szintaxis
/dynamicdeopt
/dynamicdeopt:suffix <suffix>
/dynamicdeopt:sync
Érvek
suffix
Adja meg a deoptimizált kimenet fájlkiterjesztését.
Ha nincs lehetőség, és test.cpp bemenetként, a kimenet tartalmazza a test.obj, test.exeés test.pdb, valamint test.alt.obj, test.alt.exeés test.alt.pdb. Ez a kapcsoló lehetővé teszi a nem optimalizált bináris buildösszetevők utótagjának módosítását .alt-ről valami másra. Ha módosítja az utótagot, minden fájlnak az új utótagot kell használnia, és meg kell egyeznie a hivatkozásnak átadott névvel /dynamicdeopt:suffix (előzetes verzió). Ezt a kapcsolót általában csak akkor használja, ha el kell kerülnie, hogy a fájlnév ütközjön más fájlokkal.
sync
Az optimalizált kimenet párhuzamos helyett az optimalizált kimenet létrehozása után hozza létre az optimalizált kimenetet. Alapértelmezés szerint a fordító párhuzamos példányt hoz létre a kódgenerátorból. Ez a kapcsoló ehelyett soros futtatásra készteti őket. Ez a kapcsoló akkor érhető el, ha ez jobban megfelel a buildkörnyezetnek.
Megjegyzések
Ez a Visual Studio 2022 17.14 Preview 2 verziótól kezdődően elérhető előnézeti jelző csak x64-projektekre vonatkozik, és a megfelelő linkerjelölővel kell használni, /DYNAMICDEOPT.
A /dynamicdeopt összeállítása más, hibakereséshez használt bináris fájlokat hoz létre. Ha optimalizált fájlban hibakeresést hajt végre egy optimalizált fájlban, a hibakereső ehelyett a másodlagos bináris fájlba lép. Ez lehetővé teszi a hibakeresést, mintha nem optimalizált kódot keres, miközben továbbra is kihasználja az optimalizált kód teljesítménybeli előnyeit.
/dynamicdeopt a következőt igényli:
/DEBUG vagy /DEBUG:FULL. Ha nem adja meg a /DEBUG, vagy ha /DEBUG:FASTLINKad meg, a hivatkozás végzetes hibát ad.
Ha /INCREMENTALad meg, a fordító figyelmeztetést hoz létre, és automatikusan kikapcsolja /INCREMENTAL.
Ha /OPT:ICFad meg, a fordító figyelmeztetést ad arról, hogy a hibakeresési élmény nem olyan jó. Ennek az az oka, hogy az ICF miatt a függvények el lesznek távolítva a helyettesítő fájlból, ami azt jelenti, hogy nem léphet hozzájuk.
Az IncrediBuild 10.24 támogatja a C++ dinamikus hibakeresési buildeket.
A FastBuild 1.15-ös verzió támogatja a C++ dinamikus hibakeresési buildeket.
/dynamicdeopt nem kompatibilis a szerkesztéssel és a folytatással, és a következő fordítókapcsolók váltanak:
/GL
/ZI
/RTC1
/RTCs
/RTCc
/RTCu
/GH
/Gh
/fastcap
/callcap
/ZW
/fsanitize=address
/fsanitize=kernel-address
All of the CLR flags
A hivatkozás beállítása a Visual Studio fejlesztői környezetében
Ezt a kapcsolót a Visual Studióban állíthatja be. További információ: C++ dinamikus hibakeresési (előzetes verzió). A kapcsoló beállítása a Visual Studióban azért előnyös, mert az MSBuild automatikusan letilt néhány nem kompatibilis kapcsolót, például /GL és /OPT:ICF. Emellett beállítja a megfelelő linker lehetőséget (/DYNAMICDEOPT). A kapcsolót a parancssorban is beállíthatja.
A fordítóprogram beállítása programozott módon
- Lásd a(z) CompileAsManaged.
Lásd még
C++ dinamikus hibakeresési (előzetes verzió)
MSVC-fordító beállításai
MSVC Fordító Command-Line Szintaxis