Tri*_*tan 8 c embedded code-organization include c-preprocessor
我正在使用嵌入式系统,我最终得到了大量的HW接口#define宏.我想将所有这些放入一个单独的文件中(对于OOP-ness),但我不知道最好的方法#include.我只是将它们全部放入.c文件中,然后包含它吗?把它们放在.h文件中似乎很傻.
Mat*_*son 13
我没有看到.h文件有什么问题.
这些应该放在.h文件中.另一个选项是一个.c文件,如果它使用标准假设每个文件将直接对应于编译文件,则需要使用#include包含.c文件,这将非常混淆人们 - 以及混淆makefile ..c.o
正常模式是.h文件用于包含在其他地方(特别是在其他多个地方)的.c文件,并且该文件用于一次编译到目标文件中的文件.
因此,以下内容通常会进入.h文件:
extern声明相反,以下内容通常会进入.c文件:
"功能定义仅进入.c文件"的情况只是当您没有任何内联函数时的简并情况.
在C++中,许多函数以模板形式定义,因此无论何时使用它们都需要包含定义,这些定义通常都放在.h(或者.hpp,或者其他)文件中.所以这种事情肯定有先例.