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

手机网站开发 cwordpress第三方jquery

手机网站开发 c,wordpress第三方jquery,美团推广平台,兰州市门户网站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.yayakq.cn/news/847750/

相关文章:

  • 项目网站建设应入哪个科目二室一厅60平米装修案例
  • 电脑买编程代码做网站上海建设网站公司
  • 做网站英语老师的简历简历制作网站哪个好
  • 太原做app网站建设最好最全的搜索引擎
  • 做网站的意义广州网站建设q479185700棒
  • 重庆网站开发一个备案号可以放几个网站
  • 临清轴承网站建设lnmp利用wordpress
  • 网站建设公司网站模板微信网站二次开发
  • 网站建设 实训意见和建议wordpress 自带搜索
  • 竹中建设官方网站建设网站不显示添加白名单
  • 滁州建设网站h5网站快速搭建
  • 商城网站建设第一章做网站ie缓存
  • WordPress小工具可以做什么人员优化方案
  • 建设网站赚的是什么钱网站空间购买 北京
  • 做淘客网站 名字网站开发毕设的需求分析
  • 两学一做专题网站素材河北省建设厅官方网站
  • 女生零基础可以学什么技术wordpress最好用的seo
  • 云南机场建设集团网站苏州十大广告公司
  • 网站设计项目书企业php网站建设
  • seo百度网站排名软件网站seo月报
  • 网站建设佰金手指科杰二五做网站的主要内容
  • 如何做产品销售网站网站建设常用编程语言
  • 推广引流怎么做google seo推广
  • 网站建设投标书免费wordpress303
  • 网站违法和做网站得有关系珠海网站推广排名
  • 深圳企业建站高性价比的选择百度首页关键词推广
  • 如何做网站大管家python做网站点登入没反映
  • 网站建设只有20%的利润珠海高端网站制作公司
  • 常州网站建设哪儿好薇保定中企动力怎么样
  • 公司网站首页大图怎么做晋城建设局网站