Share via


/Oy (vynechání ukazatele na rámec)

Zakazuje vytváření ukazatelů na rámce v zásobníku volání.

Syntaxe

/Oy%%

Poznámky

Tento parametr urychluje volání funkcí, protože není potřeba vytvářet a odebírat žádné ukazatele na rámce. Uvolní také jednu další registraci pro obecné použití.

/Oy umožňuje vynechání ukazatele rámce a /Oy- zakáže vynechání. V kompilátorech x64 nejsou dostupné /Oy a /Oy .

Pokud váš kód vyžaduje adresování založené na rámech, můžete za možnost /Oy zadat parametr /Oy nebo použít optimalizaci s argumenty y a vypnutými argumenty, abyste získali maximální optimalizaci s přidělováním na základě rámce. Kompilátor zjistí většinu situací, kdy se vyžaduje adresování na základě rámce (například s funkcemi _alloca a setjmp se strukturovaným zpracováním výjimek).

Možnosti /Ox (povolit většinu optimalizací rychlosti) a /O1, /O2 (minimalizovat velikost, maximalizovat rychlost) znamenají /Oy. Určení /Oy- za parametrem /Ox, /O1 nebo /O2 zakáže /Oy bez ohledu na to, jestli je explicitní nebo implicitní.

Možnost kompilátoru /Oy znesnadňuje použití ladicího programu, protože kompilátor potlačí informace o ukazateli rámce. Pokud zadáte možnost kompilátoru ladění (/Z7, /Zi, /ZI), doporučujeme zadat možnost /Oy za všemi dalšími možnostmi kompilátoru optimalizace.

Nastavení tohoto parametru kompilátoru ve vývojovém prostředí Visual Studio

  1. Otevřete dialogové okno Stránky vlastností projektu. Podrobnosti najdete v tématu Nastavení kompilátoru C++ a vlastností sestavení v sadě Visual Studio.

  2. Vyberte stránku vlastností konfigurace>C/C++>Optimization.

  3. Upravte vlastnost Vynechat ukazatele rámce. Tato vlastnost přidá nebo odebere pouze možnost /Oy . Pokud chcete přidat možnost /Oy- vyberte stránku vlastností příkazového řádku a upravte další možnosti.

Programové nastavení tohoto parametru kompilátoru

Viz také

/O – možnosti (optimalizace kódu)
Parametry kompilátoru MSVC
Syntaxe příkazového řádku kompilátoru MSVC