vs2019 + opencv生成自己的dll动态库供他人使用

本文详细介绍了如何使用VisualStudio2019和OpenCV在C++环境中创建和调用动态链接库(dll和lib),包括创建dll工程、设置编译选项和新工程引入dll的步骤。

vs2019 + opencv生成自己的dll动态库供他人使用

最近需要把自己写的工程代码编译成动态库供他人使用,于是看了好多博客,但发现其实并不是很详细,于是自己成功后想把方法保存下来供自己后面可以使用。

使用动态库需要同时用到dll和lib文件,使用的编译器是Vs2019,同时还使用了opencv,没有装opencv也可以看参考,直接把涉及到opencv的代码删除好了。

一、生成dll和lib文件

1.打开vs2019,创建一个dll文件工程。
在这里插入图片描述

2.在Dll文件夹下建立math工程,**注意:**解决方案处我未打勾,后面都是在这个基础上配的。
在这里插入图片描述

建立后的文件夹如下图所示:
在这里插入图片描述

如下图,建立后vs2019默认有这4个文件, 其中一种方法是在那几个.h和.cpp中直接粘贴代码的,在使用生成的dll时得包含头文件#include"pch.h",若有多个dll工程,这样每个工程都会有"pch.h",会造成不知道是哪个头文件。因此这里不考虑这种方法,直接忽略他们,直接往下面第5点看。

在这里插入图片描述

5.重点: 在debug x64下(也可release),直接在源文件和头文件中建立一个类,这个类名就是后续要使用的头文件名字。 我这里命名为"MathAlgorithm.h" 和 “MathAlgorithm.cpp”,把自己写的代码粘贴上去就好了。代码在后面,有需要的直接拿走。

__declspec(dllexport) 表示可以导出函数或类给其他工程调用的意思,这里定义了宏SimpleCal_API来代替它。
在这里插入图片描述

.h代码

// MathAlgorithm.h

#pragma once
#include<iostream>
#include<opencv2/opencv.hpp>


#define SimpleCal_API ;
#ifdef SimpleCal_API
#define SimpleCal_API __declspec(dllexport)
#else
#define SimpleCal_API __declspec(dllimport)
#endif

// 全局函数 使用了opencv第三方库,若没有装可以把这个函数去掉
SimpleCal_API bool testBuildOpencvDLL(cv::Mat& imgInput, cv:
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值