我目前有一个包含 3 个文件的项目。
一个 DBheader.h
头文件,包括:
- 类声明(及其较小的成员函数定义)
DBdefinitions.cpp
文件包含:
DBheader.h
中类的更大成员函数定义
最后是一个 DBmain.cpp
文件,其中包含:
- 主要代码
- 使用
DBheader.h
中定义的类的一些大型(非成员)函数
我最好将这些函数移到某个地方,以使我的 DBmain.cpp
文件不那么困惑。我应该/可以将它们移动到 DBdefinition.cpp
文件,还是我需要为非成员函数创建一个新的单独的 .cpp
文件?
如果上面的内容不清楚,这里是我的代码的大致样子。
//DBheader.h
//libraries..
class course{
//member data..
void printinfo();
}
-
//DBdefinitions.cpp
#include "DBheader.h"
void course::printinfo(){/*do stuff*/}
-
//DBmain.cpp
#include "DBheader.h"
typedef map<int,course> record;
void fileinput(record &map);
int main(){
//stuff
}
void fileinput(record &map){
//lots of code
}
最佳答案
您应该按照用于类
定义的类似方式来组织作为公共(public)接口(interface)一部分的自由函数:带有声明的 header 和带有实现的实现文件。
如果它们特定于特定的翻译单元,请将它们保存在该实现文件中。
所有自由函数都应在命名空间
内声明(为公共(public)函数命名,为“私有(private)”自由函数命名)。
关于c++ - 项目中的函数、类定义和主要代码应该如何分离?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10321908/