0

在关于标题排序的问题中,有一个高度评价的回答,并提出了以下建议:

良好做法:每个 .h 文件都应该有一个 .cpp,其中首先包含该 .h,然后再包含其他任何内容。这证明任何 .h 文件都可以放在首位。

即使标头不需要实现,您也可以创建一个仅包含该 .h 文件的 .cpp 文件,而不包含其他任何内容。

就我个人而言,对于没有相应 cpp 文件的标题,我从来没有遇到过包含排序的问题。这种最佳实践可以防止哪些类型的问题?

4

2 回答 2

3
  1. 头文件应自行编译。IE。用于测试制作一个仅包含头文件的 .cpp 文件。
  2. 头文件应该由预处理器保护。如果#ifndef等...

这两者都将确保订单无关紧要。

于 2012-04-06T17:12:14.550 回答
0

它解决的一个问题是允许对 .h 文件进行 lint(至少通过我的 lint 工具)。如果没有 .cpp 包含 .h 我的模板代码将被跳过。

于 2012-04-06T17:31:16.427 回答