How static libraries work? (C/C++)(静态库是如何工作的?(C/C++))
本文介绍了静态库是如何工作的?(C/C++)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道如何使用和创建它们,但我找不到关于它是如何实现的、函数调用是如何发生的等等的文本,有人可以帮助我了解这些信息吗?因为我想了解它们,而不仅仅是知道它是什么以及它是如何工作的
推荐答案
您可能知道,当您编译一个源文件时,您会得到一个目标文件。根据您的平台,它的扩展名可能是.o、.obj或其他任何文件。静态库基本上是目标文件的集合,有点像.Zip文件,但可能没有压缩。当尝试生成可执行文件时,链接器尝试解析引用的符号,即定位它们定义在哪个目标文件中(无论是在库中还是在其他位置),并将它们链接在一起。因此,静态库还可以包含已定义符号的索引,以便于执行此操作。具体实现取决于特定的链接器和库文件格式,但基本架构如上所述。
您可能希望查看维基百科或其他内容中的斜体关键字,以了解有关它们的更多信息。
这篇关于静态库是如何工作的?(C/C++)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:静态库是如何工作的?(C/C++)
猜你喜欢
- GDB 不显示函数名 2022-01-01
- OpenGL 对象的 RAII 包装器 2021-01-01
- 哪个更快:if (bool) 或 if(int)? 2022-01-01
- XML Schema 到 C++ 类 2022-01-01
- 如何提取 __VA_ARGS__? 2022-01-01
- 从父 CMakeLists.txt 覆盖 CMake 中的默认选项(...)值 2021-01-01
- 将 hdc 内容复制到位图 2022-09-04
- 使用 __stdcall & 调用 DLLVS2013 中的 GetProcAddress() 2021-01-01
- DoEvents 等效于 C++? 2021-01-01
- 将函数的返回值分配给引用 C++? 2022-01-01
