[英].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.