尝试编译我的 c++ 代码时,我收到标题中提到的错误。我无法理解我在这里做错了什么。
bool operator==(Token )
编译器对我的函数实现有问题。我认为这是重载运算符的方法。
关于为什么编译器不喜欢我提到
this->terminal
or的任何线索this->lexeme
?
class Token {
public:
tokenType terminal;
std::string lexeme;
Token *next;
Token();
bool operator==(Token &t);
private:
int lexemelength, line, column;
};
bool Token::operator==(Token &t) {
return ((this->terminal == t->terminal) &&
(this->lexeme == t->lexeme));
}