调用约定

几种常见的调用约定:

1._ _ cdecl     C标准调用约定

2._ _stdcall   windows标准调用约定

3._ _fastcall  快速调用约定

4._ _thiscall  成员方法调用约定

 

约定的内容:

1.函数符号的生成

2.实参的入栈顺序

3.形参的开辟和清理方式

 

1._ _cdecl: 函数参数由右向左的顺序入栈,并且由调用方把参数弹出栈以清理堆栈。

2._ _stdcall: 形参的空间由调用方开辟,被调用方清理。函数的参数自右向左通过栈传递,被调用的函数在返回前清理传送参数的内存栈。

3_ _fastcall:最多使用两个寄存器来带入实参,其他参数和_ _stdcall调用约定的处理方式相同。

你可能感兴趣的:(调用约定)