QT 调用外部dll库的方式 -- 隐式调用

1.用vs (我使用的是vs2013)编写一个dll库

calculator.c
-----------------------------------------------------
#include "calculator.h"


int add(int x, int y)
{
	return x + y;
}



calculator.h
-------------------------------------------

#pragma once

#include <stdio.h>
#include <stdint.h>

extern "C"
{
	__declspec(dllexport) int add(int x, int y);

}

 注意我的QT版本是64位,所以使用vs编译的时候也应该是64位的

 

 

 

2.随便新建一个QT工程。

把dll文件和lib文件放入一个特定的位置

 

 

 我这里新建了一个libbb文件夹,把dll文件 lib文件 .h文件都放入这个文件夹中

 

 

 

在qt工程文件pro中添加:   

 

 

 

-l后面加上链接的名字,不需要加上lib后缀

 

包含 .h文件就可以使用

 

 

这里注意!!!!!!!!!!!!!!!!!!!!!!

拷贝过来的.h需要做一些修改

 

 

 把上面的   dllexport    修改成  dllimport   这边导出 那边导入

 

 

 

 

 

 

 

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

在pro 文件中还可以直接右键,选择添加库,选择外部库

 

 

 

 

 

 

浏览选择lib库所在的位置,点击下一步就好

 

 

 

 

 

 

不知道为啥  最后面的  -lcalculator 变成了   -lcalculatord   末尾多了一个 d  这是编不过去的,需要删掉最后一个d 也可以使用

 

posted @ 2020-12-14 18:52  fc724  阅读(1320)  评论(0)    收藏  举报