可能重复:
为什么这不能阻止多个函数声明?
全球.h
#ifndef Global_h
#define Global_h
#include <iostream>
unsigned char exitStatus;
#endif
输出处理程序.h
#ifndef OutputHandler_h
#define OutputHandler_h
#include "Global.h"
class OutputHandler {
private:
static bool instanceExists;
// more code
#endif
根目录
#ifndef Root_h
#define Root_h
// declarations
OutputHandler *output;
#endif
根.cpp
#include "Root.h"
// gets instance of OutputHandler
// more code
我收到有关exitStatus、static bool instanceExists和静态类输出已由OutputHandler.obj中的Root.obj定义的错误。我认为问题在于将头文件OutputHandler.h 包含在Root.h和OutputHandler.cpp中。任何人都知道如何解决这个问题或如何更好地组织头文件?