Dil*_*rix 5 c++ makefile multiple-inclusions c-preprocessor
我正在努力从frankenstein和一个成千上万行的程序转移到结构良好,有组织的多文件程序.现在似乎很自然(天真)的是为我的三个文件做一个标题包含的三角形:
file_1包含file_2,file_4
file_2包含file_3,file_4
file_3包含file_1 ....等等
这些文件有变量,我需要在其他文件之间的方法,结构等.
当然,我有双重包含错误.
我的问题:我应该通过在头文件中使用预处理程序指令来避免这些问题(例如,在头文件中完全包含结构,方法等),或者我应该使用makefile编译(我听说也可以用来解决这个问题 - - 但我从未做过一个)?
包含声明和共享结构等的预处理器指令和标头是可行的方法。Makefiles 只是帮助编译源代码并将目标文件链接到外部库以形成最终的二进制文件,它无助于解决多重包含问题。简而言之,在头文件中声明以下内容:
用#IFNDEF和保护它们#ENDIF,然后将头文件包含到各个 .c 文件中...
| 归档时间: |
|
| 查看次数: |
6221 次 |
| 最近记录: |