Импорт и экспорт встроенных функций
Импортируемые функции можно определить как встраиваемые функции.Результат является примерно тот же, что и при определении стандартной встроенной функции; вызовы функций расширяются во встроенный код, что во многом напоминает макрос.Это в основном применяется в качестве средства поддержки классов C++ в библиотеке DLL, в которую с целью повышения производительности могут встраиваться некоторые функции-члены.
Одной из особенностей импортируемой встроенной функции является возможность считывания её адреса в C++.Компилятор возвращает адрес копии встроенной функции, находящейся в библиотеке DLL.Другой особенностью импортируемых встроенных функций является возможность инициализации статических локальных данных импортируемой функции, в отличие от глобальных импортируемых данных.
Внимание |
---|
Следует соблюдать осторожность при передаче импортируемых встроенных функций, поскольку они могут вызывать конфликты версий.Встроенная функция расширяется в код приложения; поэтому, если в дальнейшем вы переписываете эту функцию, она не обновится, если не выполнить повторную компиляцию приложения.(Обычно функции библиотек DLL обновляются без повторного построения приложений, в которых они используются.) |
Выполняемые задачи
Экспорт из библиотеки DLL с использованием __declspec(dllexport)
Экспорт функций C++ для использования в исполняемых файлах, исходный код которых написан на языке C