在开发软件时,我们经常被问到,在包含应用程序的功能时,是要使用LIB还是DLLs。LIB是一个静态库,其中的函数和程序可以被放置并在应用程序被编译时被调用。DLL或动态链接库具有同样的功能,但却是动态的,即应用程序可以在运行时而不是在编译时调用这些库。与使用LIB相比,这有几个明显的优势。

首先,会有一个明显更大的文件,因为它包含了所有的代码,而使用DLL时,会有多个更小的文件。一旦对DLL上的函数感到满意,就可以在每个版本的应用程序中保持原样,而不必再去搞它。如果想创建另一个使用相同功能和程序的应用程序,也可以使用同一个DLL。可以直接链接到DLL,而不是像LIB那样从源代码中复制代码。

DLL的一个问题是当改变DLL的内容时。这可能会导致版本问题,即应用程序使用不正确的DLL版本导致问题。需要跟踪你的DLLs,以避免这些问题。使用LIB就不会有这样的问题,因为只会得到一个大文件。

当开发软件并选择DLL时,项目中仍然会有一个LIB文件。但与使用LIB时不同的是,这个文件不包含函数和程序的代码,而只包含程序需要调用DLL的程序的存根。

LIB和DLL的区别

  1. DLL是一个包含函数的库,可以在运行时被应用程序调用,而LIB是一个静态库,其代码需要在编译时被调用。
  2. 使用LIB会产生一个相当大的文件,而最终会得到多个较小的DLL的文件。
  3. 在编写新版本或全新的应用程序时,DLL比LIB更容易重复使用。
  4. DLL文件可以被其他应用程序使用,而LIB文件不能。
  5. DLL文件容易出现版本问题,而LIB则不会。
  6. 使用DLLs开发软件时,仍然会有一个LIB文件,但它只包含存根。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:LIB和DLL的区别
本文链接:https://www.vsdiffer.com/vs/difference-between-lib-vs-dll.html
免责声明:以上内容仅是站长个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。