【发布时间】:2013-07-23 01:26:15
【问题描述】:
除了 C 和 C++ 之外,几乎所有语言都不会将标头与实现分开。将函数/方法的实现放在头文件中以便您不需要将两者分开是否仍然被认为是一种不好的做法?
例子:
// File: myUtilLib.hpp
void myFunc1() {
doSomething...
}
void myFunc2() {
doSomething else...
}
是否必须将所有声明复制/粘贴到单独的.cpp 文件中?
【问题讨论】:
-
几乎所有其他语言都没有缓慢的标题包含系统。我个人不能等到模块整理好。然后当它不在标题中时,您实际上可以隐藏实现。
-
最大的缺点是编译速度较慢和违反单一定义规则(可以用
inline关键字覆盖)。