Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > __stdcall vs __cdecl


Автор: [ss]3L33T@ 26.11.2003, 15:18
Вот вопрос назрел:
Есть значит __cdecl - он читает функцию слева-направо, а кладёт в
память её на оборот, позволяя передовать в него неограниченое кол-во параметров
Все функции используют это по дефолту. Но есть __stdcall, он всё делает наоборот:берёт
спарва-налево и кладёт наоборот(слева-направо), таким образом ограничивая кол-во
параметров.
Поправьте меня, если я не прав.
Тогда зачем использовать __stdcall, если можно всегда юзать __cdecl. В чём разница ещё?

Автор: GanZaleZ 26.11.2003, 17:37
Ну один из аргуметноф - Это более старый способ smile.gif)

Автор: Ars 27.11.2003, 14:09
__stdcall функция сама чистит за собой стек, а __cdecl оставляет это за вызывающей функцией, в результате чего функции, часто вызывающие __cdecl перегружены cleanup кодом, а это в свою очередь влияет на вес проги вцелом.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)