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

vs2017静态库和动态库的创建与使用简明教程

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

vs2017静态库和动态库的创建与使用简明教程

vs2017静态库和动态库的创建与使用简明教程

静态库创建和使用

创建使用易错点 动态库创建和使用

创建使用注意DLL的好处 Others

静态库创建和使用 创建

    打开vs2017点击创建新项目,选择静态库;

    在StaticLib.cpp文件下写实现,再创建一个对应的头文件写声明:

    项目->生成 即可在输出文件夹下得到对应的lib文件:

使用

新建一个项目,点击属性,配置三条款项:

    VC++目录的包含目录和库目录分别加入lib对应头文件的位置和lib文件的位置;链接器->输入 添加lib文件的名字;


在需要的项目文件中添加lib对应的头文件,之后使用函数即可:

易错点
    配置项目属性时一定要看好自己运行的环境是Debug还是Release,是X86还是X64,配置一定要对应(例如配置的是Debug的属性结果Release没配置还去生成Release版本);lib文件创建在x86还是x64那么使用这个lib时项目也只能运行在对应的版本上!否则会报link2019:

动态库创建和使用 创建
    新建项目->具有导出项的动态链接库(不然可能不会生成lib文件,lib是指向dll的桥梁):

    创建好该项目后,会发现有一个与项目名称相同的h文件和cpp文件,里面写好了基本的代码,只需要在其基础上模仿添加自己的业务代码即可(注意无论是函数还是变量都要有DLL3_API这个宏,表示导出项):

    在cpp文件中实现自己的业务函数:

    生成代码(注意之后使用dll和生成dll所在的平台要一致,x86或x64)

    生成完毕后会在对应文件夹(e.g. DEBUG)下找到dll文件和lib文件:

使用
    创建一个新项目;VC++目录的包含目录和库目录分别加入lib对应头文件的位置和lib文件的位置;链接器->输入 添加lib文件的名字;将dll文件复制到项目DEBUG文件夹下或者Release文件下(exe在哪就放哪);

    编译项目即可;

前三步和使用静态库是一致的,可以理解为动态库是通过这个静态导入库导入的(该导入库仅包含 DLL 文件中存储的函数信息,无具体实现);

注意

如果不想每一次都拷贝dll文件到对应exe路径下,在vs中可以这样设置:

项目->属性->调试->环境

输入 path=dll文件的路径

DLL的好处

DLL文件中的函数可以被多个程序共用。因此,借助该功能可以节约内存和磁盘。此外,在对函数的内容进行修正时,还不需要重新链接(静态链接)使用这个函数的程序。

Others

lib一般需要h文件提供api;dll一般需要lib导入库+对应的h文件提供接口。

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

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

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