CALLCONV Enumeráció
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
A METHODDATA-struktúrában leírt metódus által használt hívási konvenció azonosítója.
public enum class CALLCONV
public enum CALLCONV
[System.Serializable]
public enum CALLCONV
type CALLCONV =
[<System.Serializable>]
type CALLCONV =
Public Enum CALLCONV
- Öröklődés
- Attribútumok
Mezők
| Name | Érték | Description |
|---|---|---|
| CC_CDECL | 1 | Azt jelzi, hogy a C deklaráció (CDECL) hívási konvencióját használja a rendszer egy metódushoz. |
| CC_MSCPASCAL | 2 | Azt jelzi, hogy az MSC Pascal (MSCPASCAL) hívási konvenció egy metódushoz használatos. |
| CC_PASCAL | 2 | Azt jelzi, hogy a Pascal-hívási konvenció egy metódushoz használatos. |
| CC_MACPASCAL | 3 | Azt jelzi, hogy a Rendszer a Macintosh Pascal (MACPASCAL) hívási konvencióját használja egy metódushoz. |
| CC_STDCALL | 4 | Azt jelzi, hogy a standard hívási konvenciót (STDCALL) használja a rendszer egy metódushoz. |
| CC_RESERVED | 5 | Ez az érték későbbi használatra van fenntartva. |
| CC_SYSCALL | 6 | Azt jelzi, hogy a rendszer a standard SYSCALL hívási konvencióval rendelkezik egy metódushoz. |
| CC_MPWCDECL | 7 | Azt jelzi, hogy a Rendszer a Macintosh Programozók Workbench (MPW) CDECL-hívási konvencióját használja egy metódushoz. |
| CC_MPWPASCAL | 8 | Azt jelzi, hogy a Rendszer a Macintosh Programozók Workbench (MPW) PASCAL-hívási konvencióját használja egy metódushoz. |
| CC_MAX | 9 | Az enumerálás végét CALLCONV jelzi. |
Megjegyzések
Az osztály hívó konvenciók azt írják le, hogy a függvények hogyan adják át az argumentumokat, és hogyan adnak vissza értékeket. Megadják a paraméterek beállítási sorrendjét az úgynevezett függvényekhez, a paraméterek tárolásának helyét (a regiszterekben vagy a memóriában), valamint azt, hogy ki (hívó vagy hívott függvény) felelős a verem eltávolításáért a függvény visszatérése után. Például:
CC_CDECL a C nyelv elnevezési és hívási konvencióit használja. A hívó fordított (jobbról balra) sorrendben leküldi a paramétereket a verembe, és a függvény visszatérése után megtisztítja a vermet. Ez a hívási konvenció lehetővé teszi a függvények
varargsmeghívását a változó számú paramétert elfogadó metódusokkal, például a C futásidejű függvények nyomtatójával, _printf_l, wprintf- _wprintf_l.CC_PASCAL a Pascal hívási konvenciót használja. A hívó balról jobbra haladva küldi le a paramétereket a verembe. A hívott függvény a visszatérés előtt megtisztítja a vermet.
CC_STDCALL a Win32-függvények szabványos hívási konvenciója. Ez az alapértelmezett konvenció a nem felügyelt függvények platformhívással való meghívására. A hívó fordított (jobbról balra) sorrendben küldi le a paramétereket a verembe, és a hívott függvény a visszatérés előtt megtisztítja a vermet.
CC_SYSCALL hasonló a CDECL-hez, mert az argumentumok leküldése jobbról balra történik. Az EAX-, ECX- és EDX-nyilvántartások nem őrződnek meg.
Ezeket a hívási konvenciók azonosítóit a .NET-keretrendszer, a Windows Embedded CE platform és az Automation használja.
A közös nyelvi futtatókörnyezet kivételt eredményez, ha egy COM-metódus natív kódban HRESULT-t ad vissza. További információ : HrESULT-ok és kivételek leképezése.