dll中调用约定和名称修饰(二)
4、thiscall
thiscall调用约定是c++中的非静态类成员函数的默认调用约定。thiscall只能被编译器使用,没有相应的关键字,因此不能被程序员指定。采用thiscall约定时,函数参数按照从右到左的顺序入栈,被调用的函数在返回前清理传送参数的栈,只是另外通过ecx寄存器传送一个额外的参数:this指针。
这次的例子中将定义一个类,并在类中定义一个成员函数,代码如下:
class csum
{
public:
int add(int a, int b)
{
return (a + b);
}
};
void main()
{
csum sum;
sum.add(1, 2);
}