Мы недавно попытались разбить некоторые наши проекты Visual Studio в библиотеки, и все, казалось, скомпилировало и создало прекрасный в тестовом проекте с одним из проектов библиотеки как...
Я могу понять это требование для старой PPC системы RISC и даже для x86-64, но для старого проверенного x86? В этом случае стек должен быть выровненный на 4-байтовых границах только. Да, некоторые...
Я изучаю программирование на Win32, и прототип WinMain выглядит следующим образом: int WINAPI WinMain (экземпляр HINSTANCE, HINSTANCE prev_instance, PSTR cmd_line, int cmd_show) Я был озадачен тем, что ...
Я встречал __stdcall много в эти дни. MSDN не очень четко объясняет, что это на самом деле означает, когда и зачем его использовать, если оно вообще используется. Буду признателен, если кто-то предоставит ...
Возвращаемое значение функции обычно хранится на стеке или в регистре. Но для большой структуры, это должно быть на стеке. Сколько копирования должно произойти в реальном компиляторе для этого кода?...
Возможный Дубликат: Как я могу найти метод который названным существующим методом? У меня есть метод в объекте, который называют от многих мест в объекте. Есть ли быстрый и простой способ...
Предположите, что требуется записать программу, которая тестирует функции в C++ dll файл. Необходимо позволить пользователю выбрать dll (мы предполагаем, что говорим о C++ dlls). Он должен смочь получить список...
Исторически сложилось так, почему это выглядит примерно каждый и их младший брат определили свои собственные правила вызова? У вас есть C, C ++, Windows, Pascal, Fortran, Fastcall и, вероятно, zillion ...
У меня есть некоторый MSVC ++, скомпилировал DLL, для которого я создал подобные COM (облегченные) интерфейсы (абстрактные классы Delphi). Некоторые из тех классов имеют методы, для которых нужны указатели на объекты. Эти методы C++...
Существуют различные соглашения о вызовах, доступные в C/C++: stdcall, экстерн, Паскаль, и т.д. Сколько такие соглашения о вызовах доступны, и что каждый имеет в виду? Есть ли любые ссылки, которые описывают...
fastcall соглашение о вызовах действительно быстрее, чем другие соглашения о вызовах, такие как cdecl? Есть ли какие-либо сравнительные тесты там, что шоу, как производительность затронута соглашением о вызовах?
Я работаю над созданием EXE ActiveX с помощью VB6, и единственный пример, который я получил, все записан в Delphi. Читая пример кода, я заметил, что существуют некоторые функции, подписи которых...
Это - то, чем я вижу, демонтируют для функции оператора (1,2,3);: movl 0$ x3,0x8 (%esp) movl 0$ x2,0x4 (%esp) movl 0$ x1, (%esp) называют 0x4012d0 <_Z8functioniii>, Это кажется мочить адресом...
Когда, если когда-нибудь, это быстрее, чтобы передать аргументы как аргументы статическому методу, а не иметь метод быть нестатичным и получить доступ к тем же значениям через членов экземпляра. Примите доступы метода...
У меня возникают проблемы с пониманием того, почему компилятор решил сместить пространство стека так, как это было сделано с кодом, который я написал. Я играл с Godbolt's Compiler Explorer, чтобы изучить C ...
При чтении некоторого соглашения о вызовах в некоторой архитектуре ЦП я считал что-то как "эпилог и пролог", когда функция вызвана от другой функции. Что такое пролог функции или...
От: http://en.wikipedia.org/wiki/X86_calling_conventions продвигает нажатие c b, продвигают вызов function_name, добавляют особенно, 12; Стек, очищающийся mov x, eax, Почему мы должны явно добавить 12 к ESP для очистки...
Я пытаюсь понять старую классическую точку входа приложения Mac. Я демонтировал первый ресурс КОДА (не CODE#0, который является таблицей переходов). Код относится к некоторым переменным от стека:...
Это было некоторое время, так как я продержался кодированный ассемблер руки, и я немного ржав в деталях. Если я вызываю функцию C от руки, я только должен волноваться о сохранении r0-r3 и lr, правильно? Если функция C...
У меня есть класс C ++ MyClass, который объявляет общедоступный тип перечисления MyEnum, и я хочу использовать это перечисление в файле C. Как я могу это сделать ? Я пытался объявить свои функции в файле C ++, а затем положить все ...
Я использую инструменты clang power для компиляции проекта, который обычно скомпилирован с использованием visual studio. В заголовке lwm_win32.hpp boost (да, мы используем старую версию boost и в настоящее время не можем обновить) ...
Я должен сделать интерфейс (скажите, обертка), которые позволяют вызов из ассемблерного кода X86_64 с помощью его соглашения о вызовах для функции C с другим соглашением о вызовах. Лучшая вещь состояла бы в том, чтобы быть симпатичной "...
Я изучаю портирование механизма выполнения сценария, записанного для Windows в Linux; это - для платформы визуализации Winamp AVS. Я не уверен, возможно ли это даже в данный момент. Из того, что я могу сказать, что код...
У меня была эта проблема с C #, когда я использовал DotNet1.1. Проблема в следующем. У меня есть неуправляемая dll, в которой есть функция, которая принимает указатель на функцию (среди других аргументов). Когда я объявляю ...
Я попробовал этот typedef void (* __stdcall MessageHandler) (const Task *); Это компилируется, но дает мне это предупреждение (VS2003): предупреждение C4229: используется анахронизм: модификаторы данных игнорируются Я хочу ...
Я добираюсь, путают со всеми теми условиями: ABI, соглашение о вызовах и аппаратная архитектура. ABI является ссылкой с архитектурой: x86-64 имеют другой ABI, чем i386. Но затем Вы можете также...
Каковы ключевые факторы при использовании различных соглашений о вызовах? Когда делает кто-то знает для использования определенных соглашений о вызовах такой в качестве __ cdecl или __ stdcall или __ fastcall в различных случаях. Примеры...