文件a:
#ifndef __DEFINE_H__
#define __DEFINE_H__
#include <test.h>
.....
#endif
文件b:
#ifndef __TEST_H__
#define __TEST_H__
#include "define.h"
..........
#endif
以上出现的问题是:
当b中需要a中的头文件内容时候,会出现问题.
当预编译a文件时候,会把b文件包含进来,而b中include a文件,此时注意到
#ifndef __DEFINE_H__
所以不会包括a文件本身.如果当b文件需要引用a文件的时候,b文件就会找不到需要的头文件.
解决方法:
不要相互include.
把公共的部分提取出来,单独include.