将每个Class'方法放在单独的文件中的最佳和/或更标准的方法是什么?
例如:
Class A {
public:
void method_a(int foo1);
void method_b(int foo2);
}
将method_a()和method_b()的代码放在单独的.cpp文件中,尽管两者最终都属于A类。
#includes和标题应该如何组织?
这个想法是保持文件小,以便快速部分编译(手工而不是IDE)。所以只需编译该文件,然后链接到已编译的其他文件。
答案 0 :(得分:2)
在头文件foo.h中
Class A {
public:
void method_a(int foo1);
void method_b(int foo2);
};
在fooa.cpp
#include "foo.h"
void A::method_a(int foo1)
{
// blah blah
}
在foob.cpp
#include "foo.h"
void A::method_b(int foo2)
{
// blah blah
}
答案 1 :(得分:2)
我将首先详细阐述:
所以只需编译该文件,然后链接到已编译的其他文件。
如果更改实现文件(.cpp)需要更改标头(例如更改成员函数中传递的参数),该怎么办?然后标题将更改,包含该标头的所有.cpp文件都需要重新编译。
您建议的编译方法的成功(至少)三个措施:
所有这些都严重依赖于您用于创建/编译项目及其配置/优化设置的工具链。两件事保证(和明显的FWIW):
考虑到存在加速编译的专用工具,后来的事实是合理的。我提到两个: