kifejezést fák
A könyv célja, hogy egy széles körű iránt érdeklődő olvasók programozás C # .Vvedite rövid összefoglalót itt
Könyv: C # 4.0: Átfogó útmutató
kifejezést fák
Egy másik úton kapcsolódó LINQ, egy expressziós fa, amely képviseli a lambda expressziós formájában adatok. Ez azt jelenti, hogy a nagyon lambda kifejezés nem lehet tenni, de lehet alakítani egy futtatható formában. Expression fák vannak beágyazva az osztályban System.Linq.Expressions.Expression
egyszerűen hívja Compile () módszer, hogy egy végrehajtható formában kifejezés fa. meghatározott Expression osztályban. Ez a módszer visszaadja hivatkozni lehet rendelni a küldött későbbi végrehajtását. A képviselő típus lehet nyilvánítani magán- vagy megbízottja típusú funk előre a System névtér. Két formája funk átruházási korábban említettük, amikor a kérelem vizsgálata módszerek, de vannak más formái is.
Expression fa a következő fontos korlátozás: ezek jelentik egyetlen lambda kifejezés. Ezek segítségével nem küldhet be egy blokk lambda kifejezéseket.
Az alábbiakban egy mintaprogram, hogy bemutatja a használata egy adott kifejezést fa. Ebben a programban, először hozzon létre egy kifejezést fa, melynek adatai jelentik a módszer, amely meghatározza, hogy egy egész szám tényező a többi. Ezután a fa kifejezést lefordított futtatható kódot. Végül a végrehajtás a lefordított kód jelenik meg a programban.
Ez az, amit az eredményeket a e program végrehajtását.
Az 5-ös szám egy 10-es faktorral.
A 7-es számú nem 10-es faktorral.
Ez a példa a program használatát mutatja be, két fő szakaszból egy kifejezés fa. Először is létrehoz egy kifejezés fában a következő nyilatkozatot.
kifejezés
Ez a kijelentés gyártani képviselete lambda kifejezéseket a memóriában. Mint fentebb kifejtettük, ez a prezentáció elérhető a linkre eltulajdonított küldött IsFactorExp. És a következő nyilatkozatot adott kifejezést alakítjuk végrehajtható kódot.
Miután ezt IsFactorExp megbízottja szereplő nevezhetjük annak meghatározására, hogy egy egész szorzó másik.
Megjegyezzük továbbá, hogy