📄 token.cpp
字号:
#include "token.h"
#include <iostream>
int Token::varpri = LO;
Token::Token(char c):type(OP)
{
content.sym = c;
switch(c)
{
case '+':
case '-':
priority = varpri - 1;
break;
case '*':
case '/':
priority = varpri - 2;
break;
case '^':
priority = varpri - 3;
break;
case '(':
varpri -= 5;
break;
case ')':
varpri += 5;
break;
case EOF:
break;
case '\0': //identified the end of string
if(varpri != LO)
{
std::cerr<<"Missing token!"<<std::endl;
exit(1);
}
break;
default:
std::cerr<<"unkowned token!"<<std::endl;
exit(1);
}
}
Token::Token(double d):type(EX),priority(varpri - 4)
{
content.num = d;
}
//bool Token::operator==(const Token& it)
//{
// if(typ() != it.typ())
// return false;
// else if(typ() == EX)
// return num() == it.num();
//
// else
// return sym() == it.sym();
//}
//bool Token::operator!=(const Token& it)
//{
// return !(*this == it);
//}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -