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

📄 express.cpp

📁 这是c++编程方面的名著的例子代码
💻 CPP
字号:
  #include "express.h"  #include <String.h>//==================================================================
expression_component::expression_component(void){	 IsOperand = 0;	 IsOperator = 0;	 IsFunction = 0;}expression_component::expression_component(const expression_component &X){	 Exponent = X.Exponent;	 Value = X.Value;	 Sign = X.Sign;	 Variable = X.Variable;	 Priority = X.Priority;	 Operator = X.Operator;	 IsOperator = X.IsOperator;	 IsOperand = X.IsOperand;	 IsFunction = X.IsFunction;	 strcpy(Function,X.Function);}int expression_component::isOperator(void){	  return(IsOperator);}void expression_component::isOperator(int Bool){	  IsOperator = Bool;}int expression_component::isOperand(void){	 return(IsOperand);}void expression_component::isOperand(int X){     IsOperand = X;}int expression_component::isFunction(void){     return(IsFunction);}void expression_component::isFunction(int X){     IsFunction = X;}expression_component &expression_component::operator=(const expression_component &X){	 Exponent = X.Exponent;	 Value = X.Value;	 Sign = X.Sign;	 Variable = X.Variable;	 Priority = X.Priority;	 Operator = X.Operator;	 IsOperator = X.IsOperator;	 IsOperand = X.IsOperand;	 IsFunction = X.IsFunction;	 strcpy(Function,X.Function);	 return(*this);
}
int expression_component::operator>(const expression_component &X) const{      if(X.IsOperand){	 if(Value > X.Value){	    return(1);	 }	 else{	       return(0);	 }      }      else	  if(Priority > X.Priority){	     return(1);	  }	  else{		return(0);	  }}int expression_component::operator()(expression_component &X,expression_component &Y){	if(X.IsOperand){	 if(X.Variable < Y.Variable){	    return(1);	 }	 else{	       return(0);	 }      }      else	  if((X.Priority < Y.Priority) &&	     (X.Operator < Y.Operator)){	     return(1);	  }	  else{		return(0);	  }}int expression_component::operator<(const expression_component &X) const{       if(X.IsOperand){	 if(Variable < X.Variable){	    return(1);	 }	 else{	       return(0);	 }      }      else	  if((Priority < X.Priority) &&	     (Operator < X.Operator)){	     return(1);	  }	  else{		return(0);	  }}int expression_component::operator==(const expression_component &X) const{      if(X.IsOperand){	 if(Variable == X.Variable){	    return(1);	 }	 else{	       return(0);	 }      }      else	  if((Priority == X.Priority) &&	     (Operator == X.Operator)){	     return(1);	  }	  else{		return(0);	  }}int expression_component::operator>=(expression_component &X){      if(X.IsOperand){	 if(Value >= X.Value){	    return(1);	 }	 else{	       return(0);
	 }
      }
      else
	  if(Priority >= X.Priority){
	     return(1);
	  }
	  else{
		return(0);
	  }

}

int expression_component::operator<=(expression_component &X)
{
      if(X.IsOperand){
	 if(Value <= X.Value){
	    return(1);
	 }
	 else{
	       return(0);
	 }
      }
      else
	  if(Priority <= X.Priority){
	     return(1);
	  }
	  else{
		return(0);
	  }


}


int expression_component::operator!=(expression_component &X)
{

     if(X.IsOperand){
	 if(Value != X.Value){
	    return(1);
	 }
	 else{
	       return(0);
	 }
      }
      else
	  if(Priority != X.Priority){
	     return(1);
	  }
	  else{
		return(0);
	  }


}

operand expression_component::operand_type(void)
{
    operand Temp;
    Temp.exponent(Exponent);
    Temp.value(Value);
    Temp.sign(Sign);
    Temp.variable(Variable);
    return(Temp);
}



operator_type expression_component::opType(void)
{
     operator_type Temp;
     Temp.priority(Priority);
     Temp.op(Operator);
     Temp.function(Function);
     return(Temp);

}




ostream &operator<<(ostream &Out,expression_component &X)
{

     Out << X.IsOperand << " " << X.IsOperator << endl;
     Out << "Value " << X.Value  << endl;
     Out << "Function " << X.Function << endl;
     Out << "Variable " << X.Variable << endl;
     Out << "Operator " << X.Operator << endl;
     return(Out);

}

⌨️ 快捷键说明

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