gpt4 book ai didi

c++ - 库文件结构的常见做法

转载 作者:行者123 更新时间:2023-11-28 02:51:13 25 4
gpt4 key购买 nike

C++ 库的结构、文件方面是否有某种普遍认可的标准?我在想我的图书馆是静态的。它相当庞大,所以现在,我将类分成不同的文件。每个源文件都有一个头文件。

显然,我不希望最终用户必须 #include 我的每个头文件。我想过有一个名为“libraryname.h”的头文件,它只是#includes 用户的所有头文件,但我从未见过任何其他库这样做,我担心这是有原因的。

我见过库使用单个头文件和多个源文件,这看起来很简单但也有点困惑。我还看到库完全拒绝了将源文件和头文件分开的想法,只有一个带有#define guards 的文件包含所有代码。这似乎是一种显着增加编译时间的好方法,我想避免这种情况,但如果有一个真正令人信服的理由以这种方式制作库,我很想知道。任何有关使用哪种样式的建议都将不胜感激!

最佳答案

只有一个头文件确实会减慢您的构建速度(即,您的一个类声明中的单个更改需要完整的库构建)。

此外,您会发现大多数源文件不需要所有的 header 。您也可以使用有帮助的前向声明。

如果您的编译器支持预编译 header ,那么这是放置所有标准 C++ 库包含的地方。但是,不要将 header 放在那里,否则您将在一次更改时强制重建整个库。

关于c++ - 库文件结构的常见做法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23006576/

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