小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

解釋器模式(Robot pattern)

 漂在北方的狼 2007-03-28
namespace DesignPattern.Interpreter 

    
public abstract class Expression 
    

        
public abstract bool Interpret(); 
    }
 
 
    
public class Constant : Expression 
    

        
private bool m_val; 
 
        
public Constant(bool val) 
        

            
this.m_val=val; 
        }
 
 
        
public override bool Interpret() 
        

            
return this.m_val; 
        }
 
 
        
public override string ToString() 
        

            
return this.m_val.ToString(); 
        }
 
    }
 
 
    
public class And : Expression 
    

        
public Expression left,right; 
         
        
public And(Expression left,Expression right) 
        

            
this.left=left; 
            
this.right=right; 
        }
 
 
        
public override bool Interpret() 
        

            
return left.Interpret()&&right.Interpret(); 
        }
 
 
        
public override string ToString() 
        

            
return "("+this.left.ToString()+" && "+this.right.ToString()+")"
        }
 
    }
 
 
    
public class Or : Expression 
    

        
public Expression left,right; 
         
        
public Or(Expression left,Expression right) 
        

            
this.left=left; 
            
this.right=right; 
        }
 
 
        
public override bool Interpret() 
        

            
return left.Interpret()||right.Interpret(); 
        }
 
 
        
public override string ToString() 
        

            
return "("+this.left.ToString()+" || "+this.right.ToString()+")"
        }
 
    }
 
 
    
public class Not : Expression 
    

        
private Expression exp; 
 
        
public Not(Expression exp) 
        

            
this.exp=exp; 
        }
 
 
        
public override bool Interpret() 
        

            
return !exp.Interpret(); 
        }
 
 
        
public override string ToString() 
        

            
return "(! "+exp.ToString()+")"
        }
 
    }
 
 
    
public class Client 
    

        
public static void Main() 
        

            Expression exp
=new Or(new And(new Constant(true),new Constant(false)), 
            
new And(new Constant(true),new Not(new Constant(false)))); 
            Console.WriteLine(exp.ToString()
+"="+exp.Interpret()); 
        }
 
    }
 
}
 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多