c++ - 目标文件 (.o) 与单个文件库的头文件?

标签 c++ compilation static-libraries

假设我的库只是几个函数,可以巧妙地放入一个文件中,并且不需要任何外部依赖项。那么,将该库编译成 .o 目标文件并以这种方式分发而不是仅将其作为头文件提供是否有任何优势?我似乎想不出任何东西,尽管我只是一个初学者。

如果使用对象文件有优势,是否有任何理由将该单个对象文件打包到存档 (.a) 中,而不是单独分发对象文件?

最佳答案

对于像这样的小型库,在 .o 文件中实现它确实没有任何优势 - 无论如何您还必须提供标题。对于较大的库,事情变得不那么明显 - 链接目标代码通常比编译大量 C++ 文本更快,无论如何你都必须链接,但另一方面,只有头文件的使用和分发更方便。

关于c++ - 目标文件 (.o) 与单个文件库的头文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44507849/

相关文章:

compilation - 使用静态链接编译 wget,自编译(开放)ssl 库链接问题

c++ - C++ 中 malloc 的自定义实现

java - 如何在从 Maven 自定义插件编译之前扫描当前项目中的类?

c# - 使用 C# 6.0 中的功能时是否有任何性能提升?

gcc - 使用 GCC 4.8 快照配置 GDC 的构建

c - 将头文件包含到静态库中

c++ - 声明但不定义内部结构/类——C++ 是否合法?

c++ - 从另一个方法调用成员方法指针

c++ - TensorFlow C++等于argmax(axis = -1)

C++ 静态库