繁体   English   中英

VS2010生成的.lib文件

[英].lib files generated by VS2010

使用任何C ++ VS2010解决方案,

  • 什么是.lib? 为什么不总是将程序链接到通过DLL的库?

  • 在VS2010中构建程序是生成.lib的唯一方法吗?

生成DLL链接的.lib文件称为“导入库”,它确实是一个静态库(尽管是一种特殊的静态库)。 它只是一个静态库,包含在加载时导入DLL的大量代码,换句话说,它充当代码和动态库之间的“中间人”。

如果创建“静态库”,最终会得到一个大的.lib文件,其中包含该库中函数的所有已编译代码。 如果您随后使用该库创建可执行文件,则所有代码将在链接时复制到可执行文件中。 这会生成一个更大的可执行文件,但在运行时不依赖于单独的DLL文件。

如果您创建一个“动态库”,最终会得到一个大的.dll文件和一个小的.lib,如前所述。 库中函数的所有已编译代码都在.dll文件中。 现在你的最终可执行文件更小,因为代码在链接时没有被复制到可执行文件中,但.dll文件必须与可执行文件一起发送,除非你可以依赖它已经在最后正确安装 - 用户的电脑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM