public static IExpression GetMarriedFemaleExpression() { IExpression julie = new TerminalExpression("Julie"); IExpression married = new TerminalExpression("Married"); return(new AndExpression(julie, married)); }
public static IExpression GetMaleExpression() { IExpression robert = new TerminalExpression("Robert"); IExpression john = new TerminalExpression("John"); return(new OrExpression(robert, john)); }
public void Build(string a_strExpression) { IExpression l_ixLeft, l_ixRight; string[] l_strElements = a_strExpression.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < l_strElements.Length; i++) { if (l_strElements[i] == "+") { l_ixLeft = m_ixResult; l_ixRight = new TerminalExpression(Convert.ToInt32(l_strElements[++i])); m_ixResult = new AddExpression(l_ixLeft, l_ixRight); } else if (l_strElements[i] == "-") { l_ixLeft = m_ixResult; l_ixRight = new TerminalExpression(Convert.ToInt32(l_strElements[++i])); m_ixResult = new SubExpression(l_ixLeft, l_ixRight); } else { m_ixResult = new TerminalExpression(Convert.ToInt32(l_strElements[i])); } } }
//Rule: Julie is a married women public static Expression getMarriedWomanExpression() { Expression julie = new TerminalExpression("Julie"); Expression married = new TerminalExpression("Married"); return(new AndExpression(julie, married)); }
//规则:Julie 是一个已婚的女性 public static IExpression GetMarriedWomanExpression() { var julie = new TerminalExpression("Julie"); var married = new TerminalExpression("Married"); return(new AndExpression(julie, married)); }