C++ DLL库实现
来源:互联网 发布:php 判断是否含有中文 编辑:程序博客网 时间:2024/06/05 08:38
1. 导出函数
mathfun.h
- #ifndef MATHFUN_DEF
- #define MATHFUN_DEF
- #ifdef OPENMVGDLL_EXPORTS
- #define MATHFUN_API __declspec(dllexport)
- #else
- #define MATHFUN_API __declspec(dllimport)
- #endif
- extern "C"
- {
- int MATHFUN_API m_add(int a, int b);
- int MATHFUN_API m_sub(int a, int b);
- }
- #endif // !MATHFUN_DEF
- #include "mathfun.h"
- #define OPENMVGDLL_EXPORTS
- int m_add(int a, int b)
- {
- return (a + b);
- }
- int m_sub(int a, int b)
- {
- return (a - b);
- }
2. 导出类
与导出函数类似,把导出宏加到类前(eg. class MATHFUN_API myclass )
并在类函数前加 MATHFUN_API
导出类不需要 extern "C"
- #ifndef MATHFUN_DEF
- #define MATHFUN_DEF
- #ifdef OPENMVGDLL_EXPORTS
- #define MATHFUN_API __declspec(dllexport)
- #else
- #define MATHFUN_API __declspec(dllimport)
- #endif
- class MATHFUN_API myClass
- {
- int MATHFUN_API m_add(int a, int b);
- int MATHFUN_API m_sub(int a, int b);
- }
- #endif // !MATHFUN_DEF
3. 调用DLL库
添加 mathfun.h mathfun.lib mathfun.dll到当前工程目录下
调用文件头部添加
#define OPENMVGDLL_EXPORTS
#include "mathfun.h"
然后就可直接调用函数和类(注意顺序不能变)
阅读全文
0 0
- Visual C++DLL编程实现
- Visual C++DLL编程实现
- dll库的实现
- C++ DLL库实现
- JNA调用C实现的DLL
- C/C++-动态链接库(DLL)
- lua——alien库实现lua调用C动态链接库(dll、so)
- Java调用C/C++实现的DLL动态库——JNI
- Java调用C/C++实现的DLL动态库——JNI
- 使用PInvoke实现C#调用非托管C代码DLL库
- C++DLL
- Unity 导入C# DLL、C\C++ DLL 等外部库
- 学习利用JNI实现Java调C的DLL
- C#+ICSharpCode.SharpZipLib.dll实现压缩解压缩功能
- C语言创建dll及Labview实现调用
- java 解决调用c语言实现简单HelloWorld函数生成.dll动态链接库的32位dll文件无法在64位机上运行
- C#调用C++DLL库常见问题
- JNA调用C动态库dll、so
- 动态添加碎片五步骤
- Unity API 学习 (部分)
- ubuntu 安装pip
- Android笔记(12)利用高德地图定位
- 安卓NDK开发案列三:文件的拆分与合并
- C++ DLL库实现
- 大牛deep learning入门教程
- spring中ioc与aop的理解
- mysql 字符集编码问题
- @requestBody and @responseBody注解作用
- Activity之启动模式
- Java获取当前日期时间的2种方法
- 二叉树最大宽度和高度(codevs1501)
- 【刷题剑指offer】数组中连续子数组的最大和