导出 C 函数以用于 C 或 C++ 语言可执行文件

您所在的位置:网站首页 qt导出函数 导出 C 函数以用于 C 或 C++ 语言可执行文件

导出 C 函数以用于 C 或 C++ 语言可执行文件

2023-02-25 17:02| 来源: 网络整理| 查看: 265

导出 C 函数以用于 C 或 C++ 语言可执行文件 项目 01/10/2023

如果在 DLL 中有用 C 编写的函数,则可以使用预处理器宏从 C 语言和 C++ 语言代码轻松访问这些函数。 __cplusplus 预处理器宏指示正在编译的语言。 当从 C++ 语言代码调用时,可以使用它来声明具有 C 链接的函数。 如果使用此方法并为 DLL 提供头文件,则 C 和 C++ 用户可以在不进行任何更改的情况下使用这些函数。

下面的代码演示 C 和 C++ 客户端应用程序可以使用的头文件:

// MyCFuncs.h #ifdef __cplusplus extern "C" { // only need to export C interface if // used by C++ source code #endif __declspec( dllimport ) void MyCFunc(); __declspec( dllimport ) void AnotherCFunc(); #ifdef __cplusplus } #endif

有时可能需要将 C 函数链接到 C++ 可执行文件,但函数声明头文件尚未使用上述技术。 仍然可以从 C++ 调用函数。 在 C++ 源文件中,包装 #include 指令以防止编译器修饰 C 函数名称:

extern "C" { #include "MyCHeader.h" } 你希望做什么?

使用 .def 文件从 DLL 导出

使用 __declspec(dllexport) 从 DLL 导出

使用 AFX_EXT_CLASS 导出和导入

确定要使用的导出方法

使用 __declspec(dllimport) 导入应用程序

初始化 DLL

你想进一步了解什么?

修饰名

使用 extern 指定链接

请参阅

从 DLL 导出



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3