stdcall



Cdecl

Автор Someone задал вопрос в разделе Другие языки и технологии

__thiscall что это и зачем нужно? и получил лучший ответ

Ответ от Алексей Арыков[гуру]
Соглашение вызова или модель вызова (англ. Calling convention) — часть двоичного интерфейса приложений, которая регламентирует технические особенности вызова подпрограммы, передачи параметров, возврата из подпрограммы и передачи результата вычислений в точку вызова.
Наиболее распространённые соглашения вызова на 32-битном x86
* 1 cdecl
* 2 pascal
* 3 stdcall/winapi
* 4 fastcall
* 5 safecall
* 6 thiscall
thiscall
Используется в компиляторах C++. Обеспечивает передачу аргументов при вызовах методов класса в объектно ориентированной среде. Аргументы передаются через стек, справа налево. Очистку стека производит вызываемая функция, то есть тот же самый stdcall. Указатель (this) на объект, для которого вызывается метод, записывается в регистр ECX.
fastcall
Передача параметров через регистры, обычно самая быстрая; если все параметры и промежуточные результаты умещаются в регистрах, манипуляции со стеком вообще не нужны. Fastcall не стандартизирован, поэтому используется только в функциях, которые программа не экспортирует наружу. Например, у Borland параметры передаются слева направо в eax, edx, ecx и, если параметров больше трёх, в стеке. Указатель стека на исходное значение возвращает подпрограмма.
Fastcall Borland применяется по умолчанию в Delphi.
Это всё Важно только для компилятора, не заморачивайся на этом вообще

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: __thiscall что это и зачем нужно?
Соглашение о вызове на Википедии
Посмотрите статью на википедии про Соглашение о вызове
Сопротивление фильм 2011 на Википедии
Посмотрите статью на википедии про Сопротивление фильм 2011
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*