回答
表達式樹是一個包含表達式的數據結構,它基本上是代碼。所以它是一個樹形結構,代表您可能在代碼中進行的計算。這些代碼片段可以通過在一組數據上「運行」表達式樹來執行。
關於表達式樹的一個好處是可以在代碼中構建它們;也就是說,您可以在代碼中構建可執行代碼(或一系列步驟)。您也可以在執行代碼之前通過用其他表達式替換表達式來修改代碼。
表達式是一個函數委託,例如(int x => return x * x)
。
又見http://blogs.msdn.com/b/charlie/archive/2008/01/31/expression-tree-basics.aspx
的這不是真的。正如鏈接文章中指出的那樣,表達式樹主要用於表示計算結果,這些計算結果將通過網絡發送到其他地方執行。爲此,他們不包含代碼;而不是代碼。 – 2016-06-29 05:53:32
表達式樹可用於任何要在本地或遠程執行的計算。您可以輕鬆編寫一個解析器,將分類器轉換爲表達式樹。我也從來沒有說Expression Tree包含代碼。 – 2016-07-13 14:10:55
如果「其中包含代碼的樹結構」不是意味着它們「包含代碼」,那麼您應該編輯您的答案以使其清楚。您應該明確表示表達式不包含任何IL代碼,並且依賴於被進一步轉換爲可執行文件。 – 2016-07-15 00:23:54
- 1. 什麼是armeabi以及他們爲什麼使用它
- 2. ObjectSpace - 它是什麼以及人們如何使用它?
- 3. 什麼是IntelliJ中的「手錶」以及如何使用它們?
- 4. SQL,Postgres OID,它們是什麼以及它們爲什麼有用?
- 5. WOFF字體,它們是什麼以及爲什麼要關心?
- 6. 裝配需要什麼?爲什麼我們使用它們?
- 7. 什麼是API Web服務,您如何創建它們以及爲什麼?
- 8. 什麼是intvectors以及如何閱讀/使用它們?
- 9. 什麼是StringIndexer,VectorIndexer以及如何使用它們?
- 10. 這些是什麼以及如何使用Ruby刪除它們?
- 11. std :: function和std :: bind:它們是什麼以及它們何時被使用?
- 12. 什麼是斷言?你爲什麼要使用它們?
- 13. 什麼是InputStream和輸出流?爲什麼以及何時使用它們?
- 14. 什麼是片段URL以及爲什麼要使用它
- 15. 什麼是.inc以及爲什麼要使用它?
- 16. 什麼是PHP中的Iterables以及我們爲什麼使用它?
- 17. 在tomcat中,什麼是catalina_home以及我們爲什麼使用它?
- 18. 字體:什麼,何時以及如何使用它們?
- 19. '元組變量',它們是什麼以及爲什麼使用它們? (包括代碼)
- 20. winio64.dll中有什麼方法以及如何使用它們
- 21. 什麼是切換按鈕以及我們什麼時候可以使用它?
- 22. 什麼是MySql工作臺以及我們使用它的目的是什麼?
- 23. 什麼是持久細分樹,我如何使用它們?
- 24. 什麼是仿函數,爲什麼我們需要它們?
- 25. 什麼是EJB回調,爲什麼我們需要它們?
- 26. 模型中有什麼?爲什麼我們需要使用它
- 27. 什麼是壓縮機模塊?他們爲什麼重要?如何使用它?
- 28. 什麼是Autoconf?爲什麼人們使用它?我應該使用它嗎?
- 29. 什麼是BigInteger,我們什麼時候可以使用它?
- 30. 什麼是ResourceContainers以及如何將它們用於雲端點?
可能重複[爲什麼要使用Expression>而非Func鍵?](http://stackoverflow.com/questions/793571/why-would-you-use-expressionfunct-而不是功能) –
nawfal
2014-07-07 06:52:34
回答幾個例子..http://stackoverflow.com/questions/403088/practical-use-of-expression-trees/20470060#20470060 – Moumit 2016-04-25 11:29:31