⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 interpreter.h

📁 这是清华出的这本经典的数据结构第三版上的随书例子。希望对大家有用。
💻 H
字号:
//**************************  interpreter.h   ***********************#ifndef INTERPRETER#define INTERPRETER#include <iostream>#include <list>#include <algorithm> // find()using namespace std;class IdNode {public:    IdNode(char *s = "", double e = 0) {        id = strdup(s);        value = e;    }    bool operator== (const IdNode& node) const {        return strcmp(id,node.id) == 0;    }private:    char *id;    double value;    friend class Statement;    friend ostream& operator<< (ostream& out, const IdNode& r) {        out << r.id << " = " << r.value << endl;        return out;    }};class Statement {public:    Statement() {     }    void getStatement();private:    list<IdNode> idList;    char  ch;    double factor();    double term();    double expression();    void readId(char*);    void issueError(char *s) {         cerr << s << endl; exit(1);     }    double findValue(char*);    void  processNode(char*, double);    friend ostream& operator<< (ostream& out, const Statement& s) {        list<IdNode>::const_iterator i = s.idList.begin();        for ( ; i != s.idList.end(); i++)            out << *i;        out << endl;        return out;    }};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -