上下文:我有一个有两个include
子句的类:
#ifndef VAR_RECORD_SONG_H
#define VAR_RECORD_SONG_H
#include "VarRecord.h"
#include "Compressor.h"
class VarRecordSong : public VarRecord
{
public:
VarRecordSong();
~VarRecordSong();
};
#endif /* VAR_RECORD_SONG_H */
问题:VarRecord.h
和Compressor.h
都包含相同的文件GlobalConstants.h
,显然编译器会抱怨。
答案 0 :(得分:2)
GlobalConstants.h文件应该是这样的:
#ifndef GLOBAL_CONSTANTS_H
#define GLOBAL_CONSTANTS_H
file contents...
#endif
因此,此文件只会在预处理代码中出现一次。