/Oy (框架指標省略)
在呼叫堆疊上隱藏框架指標的建立。
語法
/Oy[-]
備註
這個選項會加速函式呼叫,因為並不需要設定及移除框架指標。 它也會釋出一個註冊,以供一般使用。
/Oy 可啟用框架指標遺漏和 /Oy- 會停用遺漏。 在 x64 編譯器中, 無法使用 /Oy 和 /Oy- 。
如果您的程式碼需要以框架為基礎的定址,您可以在 /Ox 選項後面 指定 /Oy- 選項,或使用 optimize 搭配 「 y 」 和 off 引數,以取得框架型定址的最大優化。 編譯器會偵測大部分的情況,即需要框架式定址(例如,具有 和 setjmp
函 _alloca
式,以及結構化例外狀況處理)。
/Ox (啟用大多數速度優化) 和 /O1、/O2 (最小化大小、最大化速度) 選項表示 /Oy 。 在 /Ox 、 /O1 或 /O2 選項之後 指定 /Oy, 會停用 /Oy ,無論是明確還是隱含。
/Oy 編譯器選項會讓使用偵錯工具更加困難,因為編譯器會隱藏畫面指標資訊。 如果您指定偵錯編譯器選項 ( /Z7、/Zi、/ZI ),建議您在任何其他優化編譯器選項之後指定 /Oy- 選項。
在 Visual Studio 開發環境中設定這個編譯器選項
開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性。
選取 [ 組態屬性 > C/C++ > 優化 ] 屬性頁面。
修改省略 Frame Pointers 屬性。 此屬性只會 新增或移除 /Oy 選項。 如果您想要新增 /Oy- 選項,請選取 [命令列 ] 屬性頁並修改 [其他選項 ]。
若要以程式方式設定這個編譯器選項
- 請參閱 OmitFramePointers。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應