語法樹
我們可以用適當?shù)淖侄螌嵗齺韺崿F(xiàn)語法樹的節(jié)點。每一個實例都會有一個op字段,是節(jié)點的標簽。實例還有一些其它的字段,如下:
1.如果是一個葉子節(jié)點,那么它還有一個存放語法值的字段。Leaf(op,val)構造函數(shù)可以創(chuàng)建一個葉子實例。或者說,如果有一個標記節(jié)點,那么Leaf返回的是一個新的標記葉子節(jié)點的指針。
2.如果是一個內部節(jié)點,那么在語法樹中節(jié)點的其它字段和子節(jié)點的個數(shù)一樣多。Node構造函數(shù)有倆個或倆個以上的參數(shù):Node(op,c1,c2,...,ck),這個函數(shù)可以創(chuàng)建一個對象,這個對象的第一個字段為op和k的節(jié)點c的其它字段。