当前位置: 首页 > news >正文

dwcs2018怎么做动态网站网站建设与管理就业前景

dwcs2018怎么做动态网站,网站建设与管理就业前景,通州顺德网站建设,最便宜的低价机票网站建设QT调用vs2019生成的c动态库 dll库的创建方法: VS2019创建c动态链接库dll与调用方法-CSDN博客 加减法示范: 头文件 // 下列 ifdef 块是创建使从 DLL 导出更简单的 // 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 DLL3_EXPORTS // 符号编…

QT调用vs2019生成的c++动态库

dll库的创建方法:

VS2019创建c++动态链接库dll与调用方法-CSDN博客

加减法示范:

头文件

// 下列 ifdef 块是创建使从 DLL 导出更简单的
// 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 DLL3_EXPORTS
// 符号编译的。在使用此 DLL 的
// 任何项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
// DLL3_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的
// 符号视为是被导出的。
#ifdef DLL3_EXPORTS
#define DLL3_API __declspec(dllexport)
#else
#define DLL3_API __declspec(dllimport)
#endif// 此类是从 dll 导出的
class DLL3_API CDll3 {
public:CDll3(void);int name;int age;// TODO: 在此处添加方法。
};extern DLL3_API int nDll3;
extern DLL3_API CDll3;extern "C"{DLL3_API int fnDll3(void);DLL3_API int fnAdd(int a, int b);DLL3_API int fnSub(int a, int b);}

 cpp

// Dll3.cpp : 定义 DLL 的导出函数。
//#include "pch.h"
#include "framework.h"
#include "Dll3.h"// 这是导出变量的一个示例
DLL3_API int nDll3=666666;// 这是导出函数的一个示例。DLL3_API int fnDll3(void){return 666;}DLL3_API int fnAdd(int a, int b){return a + b;}DLL3_API int fnSub(int a, int b){return a - b;}// 这是已导出类的构造函数。
CDll3::CDll3()
{return;
}

每次修改后:都执行-》重新生成,确保 dll和lib文件的同步更新

记得 选择release,x64

把头文件.h与dll,lib放在一个地方以便拷贝到QT项目

编写正确,才能被QT调用:

使用dll查看工具显示fnAdd,fnSub编译正确

 如果显示_cdecl fnAdd(int,int),则不能被调用。

 

 

QT创建一个项目:

 把头文件.h与dll,lib拷贝到项目文件夹里面

构建编译:

查看默认编译后的路径:

 拷贝到lib,和dll到exe生成的目录

QT显式调用dll

cpp主文件添加头文件:

构造函数添加代码:

 dll隐式调用 

pro文件添加:修改Dll3, Dll3表示Dll3.lib

就可以直接调用了:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QLibrary>
#include <iostream>
#include <QMessageBox>
#include "Dll3.h"
#include <QDebug>
typedef int ( *pAdd)(int , int); //定义函数指针
using namespace std;
//using namespace MathFunc;//extern "C" __declspec(dllexport) int fnAdd(int a, int b);//extern "C" __declspec(dllexport) int fnAdd(int a, int b);MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);//dll隐式调用int cc = fnAdd(2,6);qDebug()<<"cc value is :"<<QString::number(cc);int cc_sub = fnSub(2,6);qDebug()<<"cc_sub value is :"<<QString::number(cc_sub);int n_dll3 = nDll3;qDebug()<<"n_dll3 value is :"<<QString::number(n_dll3);CDll3 aa;aa.age =13;CDll3 bb;bb.age =15;qDebug()<<"aa.age value is :"<<QString::number(aa.age);qDebug()<<"bb.age value is :"<<QString::number(bb.age);// 显示调用dll// QLibrary mydll("Dll3.dll"); //与exe相同目录// mydll.load();// if(mydll.isLoaded())// {//     pAdd add = (pAdd)mydll.resolve("fnAdd");//     if(add)//     {//         int ret = add(1,7); //在 这里调用DLL里的函数//         QMessageBox::information(this,"value","get_value is: "+QString::number(ret));//         cout<< ret << endl ;//     }//      add = (pAdd)mydll.resolve("fnSub");//     if(add)//     {//         int ret = add(9,7); //在 这里调用DLL里的函数//         QMessageBox::information(this,"value","get_value is: "+QString::number(ret));//         cout<< ret << endl ;//     }//     mydll.unload();// }}MainWindow::~MainWindow()
{delete ui;
}

http://www.ho-use.cn/article/2777.html

相关文章:

  • 做网站商城怎么样关键词优化和seo
  • 门窗网站制作宣传语baike seotl
  • 微信小程序怎么推广邯郸seo优化
  • 蓝田县住房与城乡建设局网站百度浏览器极速版
  • 擅自使用他人产品做网站宣传网站流量统计平台
  • 深圳企业网站哪家强seo实战培训学校
  • 企业网站建立费用 作什么科目广州百度快速排名优化
  • 平顶山建站公司北京网站优化步骤
  • 网页设计与制作课程标准电子版重庆网页优化seo公司
  • 网站开发建设成本百度云网页版登录入口
  • 建设通官方网站下载网络推广网站推广淘宝运营商
  • 做期货看哪些网站搜索引擎营销的实现方法
  • 线上营销的优势系统优化助手
  • 院系网站建设网站更换服务器对seo的影响
  • 企业网站mp4怎么处理上海网络公司seo
  • 上海市政府网站建设与对策分析四川seo多少钱
  • 企业做产品网站费用大概是多少建立网站需要什么条件
  • sogo提交网站入口网站推广搜索
  • wordpress store铜陵seo
  • 网站服务器迁移重庆网站搜索引擎seo
  • 做慕斯蛋糕那个网站有视频如何制作网页广告
  • 吉林北京网站建设seo研究所
  • 威客做的比较好的网站平台外宣推广技巧
  • 网站改版与优化协议书2023年广州疫情最新消息
  • 县蒙文网站建设汇报产品关键词的搜索渠道
  • 一个几个人做网站的几个故事电影营销型网站建设排名
  • 和别人做网站接单赚钱seo平台优化服务
  • 做桂林网站的图片大全搜索引擎推广简称
  • 顺义住房和城乡建设委员会网站成都网站快速优化排名
  • 做网站公司高端seo网站建设公司