/homeparams (將暫存器參數複製到堆疊)
在函式進入時,強制暫存器中所傳遞的參數寫入至堆疊上的位置。
/homeparams
備註
這個編譯器選項只適用於 x64 編譯器 (原生和跨平台編譯)。
在 x64 編譯中傳遞參數時,呼叫慣例需要參數的堆疊空間,即使在暫存器中傳遞的參數也需要。如需詳細資訊,請參閱 參數傳遞。但是在發行的組建中,則預設為暫存器參數不會寫入至堆疊,而寫入已經為參數提供的空間中。這種設定使得偵錯您程式的最佳化 (發行) 組建非常困難。
在發行組建中,請使用 /homeparams,以確保您可以偵錯應用程式。/homeparams 確實隱含效能缺點,因為它的確需要循環,才能將暫存器參數載入至堆疊上。
在偵錯組建中,堆疊一定都是以在暫存器中傳遞的參數填入。
在 Visual Studio 開發環境中設定這個編譯器選項
開啟專案的 [屬性頁] 對話方塊。如需詳細資訊,請參閱 HOW TO:開啟專案屬性頁。
按一下 [C/C++] 資料夾。
按一下 [命令列] 屬性頁。
在 [其他選項] 方塊中,輸入編譯器選項。
若要以程式方式設定這個編譯器選項
- 請參閱 AdditionalOptions。