共用方式為


/homeparams (將暫存器參數複製到堆疊)

強制傳入暫存器的參數也會在函式專案時寫入至堆疊上的位置。

語法

/homeparams

備註

這個編譯器選項僅適用于以 x64 為目標的原生和跨編譯器。

x64 呼叫慣例需要為所有參數配置堆疊空間,即使是在暫存器中傳遞的參數亦然。 如需詳細資訊,請參閱 參數傳遞 。 根據預設,暫存器參數不會複製到發行組建中為它們配置的堆疊空間。 這可讓您難以對程式的優化發行組建進行偵錯。

針對發行組建,您可以使用 /homeparams 選項來強制編譯器將暫存器參數複製到堆疊,以確保您可以對應用程式進行偵錯。 /homeparams 確實表示效能缺點,因為它需要額外的迴圈,才能將暫存器參數載入堆疊。

在偵錯組建中,堆疊一律會填入傳入暫存器的參數。

在 Visual Studio 開發環境中設定這個編譯器選項

  1. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性

  2. 選取 [組態屬性]>[C/C++]>[命令列] 屬性頁。

  3. 在 [ 其他選項 ] 方塊中輸入編譯器選項。

若要以程式方式設定這個編譯器選項

另請參閱

MSVC 編譯器選項
MSVC 編譯器命令列語法