引数の渡し方と名前付け規則
Microsoft 固有の仕様 →
すべての引数を 32 ビットに渡されたときに拡大変換されます。戻り値は32 ビットに拡大されずハードウェアのレジスタに EDX に返されるバイトの構造を除き再び表示 : ハードウェアの登録のペア。より大きな構造体は隠ぺいされたこれらの構造体にはハードウェアの登録にポインターを返します。パラメーターはスタックに右から左へプッシュされます。POD では構造はレジスタに戻りません。
コンパイラは関数で使用する場合ESI EDIおよび EBX EBP レジスタを保存および復元するためにプロローグとエピローグ コードを生成します。
[!メモ]
構造体共用体またはクラスを値渡しで関数から戻るとき型のすべての定義は実行時に他のプログラムやがあります。失敗した同じである必要があります。
独自の関数プロローグとエピローグを定義する方法の詳細については 生の関数呼び出し を記述する方法" " を参照してください。
次の呼び出し規約はC/C++ コンパイラによってサポートされます。
Keyword |
スタックがクリア |
パラメーター。 |
---|---|---|
呼び出し元 |
逆順のスタックのパラメーターをEnter キー (右から左) |
|
適用なし |
式の順序で CLR スタックにパラメーターを読み込む] (左から右)。 |
|
呼び出し先 |
逆順のスタックのパラメーターをEnter キー (右から左) |
|
呼び出し先 |
次にスタックにプッシュされるレジスタに格納されている |
|
呼び出し先 |
スタックにプッシュされる ; ECX に格納されている this のポインター。 |
関連情報については旧式の呼び出し規約 を参照してください。
特定の終了