zoukankan      html  css  js  c++  java
  • 4 动态库和静态库

    4.1 静态库

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

    4.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");

    4.3 优缺点

    • 静态库优缺点:
      • 静态库对函数库的链接是放在编译时期完成的,静态库在程序的链接阶段被复制到了程序中,和程序运行的时候没有关系;
      • 程序在运行时与函数库再无瓜葛,移植方便。
      • 浪费空间和资源,所有相关的目标文件与牵涉到的函数库被链接合成一个可执行文件。
  • 相关阅读:
    Ubuntu安装Cassandra
    Ubuntu安装中文输入法
    CoreOS, Kubernetes, etcd
    CountDownLatch, CyclicBarrier and Semaphore
    Java Primitives and Bits
    vue 和 webstorm(01) 之 基本入门 _fei
    ubuntu 命令窗口背景颜色 #300a24 _fei
    2345 看图王ad介绍----关闭广告 _fei
    PHP 使用 pdo 操作oracle数据库 报错 _fei
    PHP 使用 pdo 操作oracle数据库 报错 _fei
  • 原文地址:https://www.cnblogs.com/chungeyuan/p/11410260.html
Copyright © 2011-2022 走看看