栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

vs2019 封装 自己的动态库(windows)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

vs2019 封装 自己的动态库(windows)

准备 安装一个vs2019

官网 下载 地址

下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)

链接:百度网盘 请输入提取码
提取码:uoqj

然后我们就开始

新建文件夹 右键 打开 vs

 文件  新建   项目

 找到  一个  dll  的项目

 下一步   找 一个  自己   看这比较 舒服的  路径     和 名字   点击创建

 完成 以后 就有这4个文件夹

 

 找到  pch.cpp  写你要封装的函数   我写了2个  一个是  无参的  和有参的(不用修改任何东西直接写直接的函数就可以了)

// pch.cpp: 与预编译标头对应的源文件

#include "pch.h"
#include 

using namespace std;
// 当使用预编译的头时,需要使用此源文件,编译才能成功。


void   hi() {
	std::cout << "Hello!  大家好";
}

//下面是我配置过的pcl  大家可以注释掉
//如果你没有配置pcl  把下面的全部删掉就可以了
//主要  演示   有参的函数 
#include 

void   cl(const char dir[]) {
    pcl::PointCloud::Ptr cloud(new pcl::PointCloud);
    pcl::io::loadPCDFile(dir, *cloud);

    double distance = 0;
    double shu = 0;
    for (int nIndex = 1; nIndex < cloud->points.size(); nIndex++)
    {


        int indexZ = nIndex - 1;
        shu = sqrt(abs(cloud->points[nIndex].x - cloud->points[indexZ].x) * abs(cloud->points[nIndex].x - cloud->points[indexZ].x) + abs(cloud->points[nIndex].y - cloud->points[indexZ].y) * abs(cloud->points[nIndex].y - cloud->points[indexZ].y));
        distance += shu; indexZ++;
    }

     std::cout << "测量值为(m):" << distance << std::endl;
}

写完以后  要去pch.h   去声明   其他  不用改动

extern "C" __declspec(dllexport) void cl(const char dir[]);

 注意   在    release   x64     运行

 出现这个 

                                     直接确定    不用管

进入  刚才 文件夹  在打开    vs2019   找 这个c++   空项目

 

                                右键

 把这2个   复制  到     第二次  新建的项目里面
  

右键 属性  release| x64

 

 1和2  名字要一样 

 在  main.cpp  写入掉用dll代码

//修改后的代码
#pragma once
#pragma comment(lib,"js.lib")

#include 
using namespace std;
extern "C" __declspec(dllimport) void hi();
//如果没有配置删掉下面这行
extern "C" __declspec(dllimport) void cl(const char dir[]);




int main()
{
	hi();
	
	//如果没有配置删掉下面这行
	cl("C:\Users\len\Desktop\9.pcd");


	return 0;
}

                                                        注意细节

                    成功了  ,一定要 注意细心

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/935860.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号