美文网首页
动态链接和静态链接库的区别

动态链接和静态链接库的区别

作者: natewang | 来源:发表于2018-09-25 22:02 被阅读0次

    二者不同

    静态lib将导出声明和实现都放在lib中。编译后所有代码都嵌入到宿主程序

    动态lib相当于一个h文件,是对实现部分(.dll文件)的导出部分的声明。编译后只是将导出声明部分编译到宿主程序中,运行时候需要相应的dll文件支持

    动态库的优势

    动态库把对一些库函数的链接载入推迟到程序运行的时期
    可以实现进程之间的资源共享(因此动态库也称为共享库)
    将一些程序升级变得简单
    可以真正做到链接载入完全由程序员在程序代码中控制(显式调用)

    静态库名称
    Unix:libxxx.a
    Windows:xxx.lib

    动态库名称
    Linux:libxxx.so
    Mac OS:libxxx.dylib
    Windows:xxx.dll

    相关文章

      网友评论

          本文标题:动态链接和静态链接库的区别

          本文链接:https://www.haomeiwen.com/subject/nvrroftx.html