我有test.h
个文件和example.h
文件,我希望将每个文件包含在另一个文件中
我尝试了以下但没有奏效。
在文件test.h中:
#ifndef "example.h"
#define "example.h"`
...
#endif
在文件example.h中:
#include "test.h"
后来尝试过:
#ifndef "test.h"
#define "test.h"
...
#endif
但没有任何效果。
答案 0 :(得分:3)
您需要为每个包含守卫提供一些唯一标识符。例如:
#ifndef EXAMPLE_H
#define EXAMPLE_H
...
#endif
您不能只使用#ifndef等文件名。
答案 1 :(得分:0)
也许你应该写如下:
在文件test.h中:
#ifndef __TEST_H__
#define __TEST_H__
#include "example.h"
#endif// __TEST_H__
在文件example.h中:
#ifndef __EXAMPLE_H__
#define __EXAMPLE_H__
#include "test.h"
#endif//__EXAMPLE_H__
答案 2 :(得分:0)
你做不到。这种方式包括地狱包括地狱。通过定义您使用的结构来解决您的问题
example.h文件
class bar;
class foo
{
bar* barPtr;
}
test.h
class foo;
class bar
{
foo* fooPtr;
}