仅标头代码:C 开发的一个危险命题
在 C 编程中,关于类定义的放置出现了一个常见的争论:它们应该驻留在单独的头文件中还是与 .cpp 文件中的声明一起存在?虽然有些人支持后者,但一位同事坚持将所有声明和定义放在头文件本身中,声称这是普遍采用的做法。
然而,事实并非如此。大多数 C 程序员广泛接受的流行方法是将声明和定义分离到单独的文件中。这允许更有效的编译,因为对实现文件的修改不需要重新编译整个程序。此外,它还可以防止当定义在标头中交织在一起时可能出现的类之间的循环依赖关系。
虽然仅标头代码有时可能会增强内联机会,但它的显着缺点远远超过了其感知到的好处。主要问题在于编译时间呈指数增长,因为每次包含标头时都必须处理整个代码。此外,仅标头库不允许使用前向声明,这会进一步延长编译时间。
总之,虽然仅标头代码在模板领域的实用性可能有限,但将声明分离到头文件中并将定义放入单独的 .cpp 文件中仍然是有效 C 开发的基石。这种方法可确保最佳编译时间,消除循环依赖,并保持清晰的关注点分离。
以上是仅标头 C 代码:这是最佳实践还是有风险的方法?的详细内容。更多信息请关注PHP中文网其他相关文章!