91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

web解釋器模式的知識點有哪些

發布時間:2022-01-13 16:34:52 來源:億速云 閱讀:134 作者:iii 欄目:大數據

本文小編為大家詳細介紹“web解釋器模式的知識點有哪些”,內容詳細,步驟清晰,細節處理妥當,希望這篇“web解釋器模式的知識點有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

語法建模

作為解釋器模式的標準做法,定義了語言的語法之后的步驟就是為每種語言要素準備一個類。對于四則運算的例子,其類結構如下:

web解釋器模式的知識點有哪些

類圖稍微大了一些,下面以幾條規則為例進行說明。

1. 泛化關系

示例:[5]PrimaryExpr::=NumericLiteral|ParenthesizedExpr| FunctionCall

式[5]的含義為基本表達式PrimaryExpr可以是數值型字面值NumerLiteral、帶括號表達式ParemthesizedExpr、函數調用中的某一種。轉化成類關系就是泛化關系。所有適用PrimaryExpr的地方都可以使用NumericLiteral、ParenthesizedExpr、FunctionCall中的一種來代替。

2.組合關系

[2]AdditiveExpr::=MultiplicativeExpr(("+">

當AdditiveExpr由多個MultiplicativeExpr構成時,二者之間的關系又可以看作是組合關系。

當只有一個MultiplicativeExpr的時候,式[2]可以退化為:

AdditiveExpr::=MultiplicativeExpr

這種情況可以認為二者之間是簡單的泛化關系。

3.簡單組合關系

[7]ParenthesizedExpr::="(" Expr ")"

式[7]可以看作1對1的簡單組合關系。
 

形成語法樹

回頭看一下前一篇文章中的表達式:

100.0 * sin(29 + (23 * 6)) + sqrt(cos(34 * 5))

這個表達式轉換成語法樹如下:

web解釋器模式的知識點有哪些

分析過程是沿著類圖由上而下進行,直至找到適合的類型為止。例如最初的分析從AdditiveExpr開始,它的下級節點應該是多個MultiplicativeExpr,但是右側不符合MultiplicativeExpr的條件,因此沿著類圖向下搜索直至找到符合條件的FuncitonCall為止。如此周而復始就可以得到整個語法樹。

讀到這里,這篇“web解釋器模式的知識點有哪些”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

web
AI

洞头县| 雷山县| 高雄市| 平顺县| 临邑县| 临夏县| 汉沽区| 新竹市| 江安县| 平和县| 铁岭市| 珲春市| 石狮市| 阳城县| 盐亭县| 宁波市| 独山县| 泰顺县| 西平县| 福清市| 三台县| 陕西省| 汾阳市| 克东县| 缙云县| 永嘉县| 北碚区| 双鸭山市| 广州市| 彩票| 达孜县| 垫江县| 惠水县| 辉县市| 黄石市| 邛崃市| 桑植县| 开鲁县| 白河县| 鄱阳县| 平度市|