C++ 是否应从头文件声明中排除帮助函数?(C+;+;)

C++ 是否应从头文件声明中排除帮助函数?(C+;+;),c++,coding-style,C++,Coding Style,是否应该从头文件声明中排除仅在实现文件中使用的帮助器函数 我所说的helper函数是指与类密切相关的便利函数,但它不表示类上的操作,不需要访问成员变量,因此不是方法 一方面,包括头文件中的头文件,使头文件成为相应C++实现的全面参考。另一方面,它又引入了一段代码来维护一致性。更重要的是,包含helper函数会导致对抽象层的轻微违反,从某种意义上说,该函数并不打算在其他上下文中运行,尽管不会以严重的方式运行,因为只要helper函数本身没有破坏它所使用的类的封装,就不会有损坏类状态的风险 一方面,

是否应该从头文件声明中排除仅在实现文件中使用的帮助器函数

我所说的helper函数是指与类密切相关的便利函数,但它不表示类上的操作,不需要访问成员变量,因此不是方法

一方面,包括头文件中的头文件,使头文件成为相应C++实现的全面参考。另一方面,它又引入了一段代码来维护一致性。更重要的是,包含helper函数会导致对抽象层的轻微违反,从某种意义上说,该函数并不打算在其他上下文中运行,尽管不会以严重的方式运行,因为只要helper函数本身没有破坏它所使用的类的封装,就不会有损坏类状态的风险

一方面,包括头文件中的头文件,使头文件成为相应C++实现的全面参考。 这不是头文件的用途。头文件应该是接口的引用,而不是实现的引用。一些实现细节有时会泄露出去,但这应该尽可能避免


因此,要回答您的标题问题:是。

如果它们仅用于实现的一个部分,则应将其从主头文件中排除。但是,如果希望测试这些函数,则需要将对它们的引用添加到单独的headerfile中

如果它们在实现的多个部分中使用,它们将属于它们自己的内部头文件,以便可以共享