#include重复

时间:2013-04-14 02:24:06

标签: c++ include-guards

上下文:我有一个有两个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.hCompressor.h都包含相同的文件GlobalConstants.h,显然编译器会抱怨。

1 个答案:

答案 0 :(得分:2)

GlobalConstants.h文件应该是这样的:

#ifndef GLOBAL_CONSTANTS_H
#define GLOBAL_CONSTANTS_H

file contents...

#endif

因此,此文件只会在预处理代码中出现一次。