VS2010生成的.lib文件

.lib files generated by VS2010

本文关键字:lib 文件 VS2010      更新时间:2023-10-16

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

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

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

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

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

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