上下文:我有一个类,有两个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
,所以编译器明显报错
文件GlobalConstants.h应该像这样:
#ifndef GLOBAL_CONSTANTS_H
#define GLOBAL_CONSTANTS_H
file contents...
#endif
所以这个文件只会在预处理代码中出现一次。