我现在正在用 C 做一个大项目,我正在做它的特定部分(另一个由其他人完成),我想知道我的项目何时应该被拆分为多个 c 文件,以及编写的最佳实践是什么大型项目,有一个团队(或单独)。我以前的经验是使用标头(有一个标头和一个 .c 用于编写所有函数)。
问问题
745 次
2 回答
2
人们会告诉你不同的事情。一般来说:
- 在以下情况下,您应该将文件拆分为较小的文件:
- 它有很多依赖项
- 编译时间太长
- 它知道或做得太多
- 您应该通过以下方式组织您的项目:
- 哪些部分适用于哪些类型的数据
- 哪些部分与项目的哪些其他部分协同工作
- 你应该避免的事情:
- 仅当包含在特定订单中时才有效的标题
- 拉入项目大块的标头(依赖项太多)
- 滥用预处理器宏
- 一个“util.c”或类似的。从个人经验来看,他们往往会失去控制
在 C++(不是 C)中,我倾向于为我编写的每个主要类都有一个 .h 和 .cpp 文件,有时我可能会将一些支持类与其他类密切相关的文件集中在一起,而没有这些类或多或少毫无意义(有趣的是,我有一个中型项目,在同一个文件中包含诸如 Scheduler 和 SchedulerEvent 之类的类,其中 Scheduler 包含 SchedulerEvents 的集合。该项目有大约 180 个文件,并且仍然易于维护)。
于 2012-09-19T15:27:59.627 回答
0
根据经验,将类型定义(或密切相关的类型定义)和处理此类类型的函数放入一个模块中。
公共类型和函数进入.h
-file,私有类型和函数以及所有实现进入.c
-file。
.h
没有.c
-files 的 -files 很少见。
于 2012-09-19T16:32:34.557 回答