共用方式為


引數傳遞,和命名慣例

Microsoft 專有的

它們可丟時,所有的引數會擴展為 32 位元。 傳回值也會擴大為 32 位元,並傳回 EAX 登錄,除了為 8 位元架構,則會傳回 EDX:EAX 暫存器組配對中的。 較大的結構會在 EAX 登錄以傳回指標隱藏傳回結構。 參數會推入至堆疊,由右至左。 在暫存器中,將不會傳回不是 PODs 的結構。

編譯器會產生初構和終解程式碼,以儲存並還原 ESI、 EDI、 EBX 和 EBP 通氣機、 如果函式中使用了。

注意事項注意事項

當結構、 等位或類別函式所傳回的值時,所有定義的型別都必須是相同時,其他程式可能會在執行階段失敗。

如需關於如何定義您自己的函式初構和終解程式碼的資訊,請參閱 Naked 函式呼叫

Visual C/C++ 編譯器支援下列的呼叫慣例。

Keyword

堆疊清除

傳遞的參數

__cdecl

呼叫者

將推入參數在堆疊上,以反向順序 (由右至左)

__clrcall

N/A

載入至 CLR 運算式堆疊順序 (由左到右) 的參數。

__stdcall

被呼叫者

將推入參數在堆疊上,以反向順序 (由右至左)

__fastcall

被呼叫者

儲存在暫存器,然後推入堆疊上

__thiscall

被呼叫者

推入堆疊。 在 ECX 中儲存的指標

如需相關資訊,請參閱過時的呼叫慣例

結束特定

請參閱

參考

呼叫慣例