我已经创建了几个目前仅header的C++库。我的类的接口(interface)和实现都写在同一个.hpp文件中。我最近开始觉得这种设计不太好:如果用户想要编译库并动态链接它,他/她不能。更改单行代码需要完全重新编译依赖库的现有项目。我真的很喜欢纯头文件库的各个方面:所有函数都可能被内联,并且它们非常容易包含在您的项目中-无需编译/链接任何东西,只需一个简单的#include指令。是否可以两全其美?我的意思是-允许用户选择他/她想如何使用图书馆。它还可以加快开发速度,因为我会在“动态链接模式”下处理库以避免荒谬的编译时间,并以“仅头文件模式”发布我的成品以最大限度地提高性能。第一个