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

📄 booleanexp.h

📁 我写的抽象语法树
💻 H
字号:
#ifndef BooleanExpH
#define BooleanExpH
#include <vector>
#include <algorithm>
#include <iterator>
using namespace std;
class BooleanExp
{
  public:
     BooleanExp()
     {
     }
     virtual void destory()=0;


   virtual vector<int> FiltListView(TListView* view)
   {
   }
  virtual AnsiString  FiltDateSet( )=0;
};

class VariableExp: public BooleanExp
{
  public:
    VariableExp(AnsiString name,AnsiString of,AnsiString val);
    vector<int> FiltListView(TListView* view);
  void destory();
  AnsiString FiltDateSet();

  private:
   AnsiString fieldName,fieldVal,op;
   
   bool isFloat(TListView* view,int index);


};


class AndExp:public BooleanExp
{
  public:
     AndExp(BooleanExp* left,BooleanExp* right);
      vector<int> FiltListView(TListView* view);
       void  destory();
      AnsiString FiltDateSet();

  private:
    BooleanExp* _operand1;
    BooleanExp* _operand2;
};


class OrExp:public BooleanExp
{
    public:
     OrExp(BooleanExp* left,BooleanExp* right);
     vector<int> FiltListView(TListView* view);
     AnsiString FiltDateSet();
    void destory();
  private:
    BooleanExp* _operand1;
    BooleanExp* _operand2;

};



#endif






⌨️ 快捷键说明

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