📄 ll1_judge.h
字号:
#pragma once
#include <vector>
#include <string>
#include <iostream>
using namespace std;
struct judge_nt
{
char zuo;
char you;
};
class LL1_judge
{
private:
vector<char> m_terminal;
vector<char> m_non_terminal;
vector< vector<char> > m_creation;//记录所有的产生式
vector< vector<char> > m_first;
vector< vector<char> > m_follow;
vector<char> m_temp_nt;
int m_temp_nt_pointer;
vector<char> m_compare;
string m_str_compare;
public:
LL1_judge(void);
~LL1_judge(void);
bool in_type(string str);
void cancel_directly(void);
int in_terminal_sign(string str);
void in_non_terminal_sign(string str);
bool judge_directly(vector<char> vec);
bool judge_indirectly();
void help_j_ind(vector<judge_nt> &vec, char zuo,char you,bool &is_end);
void display_all(void);
void cancel_indirectly(void);
void find_first();
void push_back(vector<char> &vec, char ch);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -