..

redefinition of class TokenEntry

背景

一个类 TokenEntry 比较简单,把实现都现在了头文件里面,在其他多个 .cpp 中引用的时候,编译提示上述错误。

解决

头文件没加限定,多个引用的话,就提示多次定义class,之前一般用 include gard , 定一个宏的方式来解决,其实还有一个办法就是

#pragma once

告诉编译器只引用一次,同样起到效果。 因为是编译器的宏,还不是标准,可能会有一些差异。

具体可以看看这篇博文的介绍。1