首页 技术 正文
技术 2022年11月10日
0 收藏 553 点赞 4,842 浏览 683 个字

1、 静态库

  • 创建

    • 工程属性配置中设置为lib静态库,编辑.h文件和.c文件,生成即可。
  • 使用
    • 方法一:

      • 添加工程的头文件目录:工程—属性—配置属性—c/c++—常规—附加包含目录:加上头文件存放目录。
      • 添加文件引用的lib静态库路径:工程—属性—配置属性—链接器—常规—附加库目录:加上lib文件存放目录。
      • 然后添加工程引用的lib文件名:工程—属性—配置属性—链接器—输入—附加依赖项:加上lib文件名。
    • 方法二:
      • #pragma comment(lib,"./mylib.lib")
    • 方法三:
      • 像添加 .h 和 .c 文件一样,把lib文件添加到工程文件列表中去。
      • 切换到”解决方案视图“,—>选中要添加lib的工程–>点击右键–>"添加"–>"现有项"–>选择lib文件–>确定。

2、 动态库

  • 创建

    • 工程属性配置中设置为dll静态库,编辑 .h 文件和 .c 文件;

      头文件中声明为__declspec(dllexport) 函数声明;

      ​ 例:__declspec(dllexport) int MyNum(int a, int b)

  • 使用

    • 方法一:

      #pragma comment(lib,"./mydll.lib")

    • 方法二:

      HANDLE hDll;

      hDll = LoadLibrary("mydll.dll");

3、优缺点

  • 静态库优缺点:

    • 静态库对函数库的链接是放在编译时期完成的,静态库在程序的链接阶段被复制到了程序中,和程序运行的时候没有关系;
    • 程序在运行时与函数库再无瓜葛,移植方便。
    • 浪费空间和资源,所有相关的目标文件与牵涉到的函数库被链接合成一个可执行文件。
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,020
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,513
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,359
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,142
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,772
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,850