gpt4 book ai didi

c++ - VS2010生成的.lib文件

转载 作者:可可西里 更新时间:2023-11-01 11:29:59 31 4
gpt4 key购买 nike

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

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

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

最佳答案

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

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

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

关于c++ - VS2010生成的.lib文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22817030/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com