マイクロソフトの資料から引用。
The __thiscall calling convention is used on member functions and is the default calling convention used by C++ member functions that do not use variable arguments. Under __thiscall, the callee cleans the stack, which is impossible for vararg functions. Arguments are pushed on the stack from right to left, with the this pointer being passed via register ECX, and not on the stack, on the x86 architecture.
The __thiscall calling convention is used on member functions and is the default calling convention used by C++ member functions that do not use variable arguments.
__thiscall呼び出し規約は、メンバー関数に利用され、可変長でない引数をとらないメンバー関数でデフォルトの呼び出し規約です。
Arguments are pushed on the stack from right to left, with the this pointer being passed via register ECX, and not on the stack, on the x86 architecture.
x86互換機では、引数は右から左にスタックにプッシュし、thisポインタはスタックではなくECXレジスタを通して渡されます。
vararg member functions use the __cdecl calling convention.
可変長の引数をとるメンバ関数は__cdecl呼び出し規約を利用します。
All function arguments are pushed on the stack, with the this pointer placed on the stack last
全ての引数はスタックに積まれ、thisポインタは最後にスタックに詰まれます。
(訳注:__cdeclは呼び出し側がスタックを綺麗にする。引数は右から左へ積む。)