我有這行代碼,我只是想知道這行代碼確實lambda表達式在XML意味着configuratore
Tracer.Initializer =() => XmlConfigurator.Configure();
是lambda表達式?
我有這行代碼,我只是想知道這行代碼確實lambda表達式在XML意味着configuratore
Tracer.Initializer =() => XmlConfigurator.Configure();
是lambda表達式?
是的,這是Lambda
與空括號指定零個輸入參數:
() => SomeMethod()
lambda表達式是一種匿名函數,可用於創建委託或表達式樹類型。通過使用lambda表達式,可以編寫可作爲參數傳遞或作爲函數調用的值返回的本地函數。 Lambda表達式對於編寫LINQ
查詢表達式特別有用。
要創建lambda表達式,可以在lambda運算符=>
的左側指定輸入參數(如果有),並將表達式或語句塊放在另一側。例如,lambda表達式(x) => x * x
指定一個名爲x的參數並返回x的平方值
請注意,在您的問題中,表達式lambda的主體由方法調用組成。但是,如果要創建在.NET Framework外部評估的表達式樹,例如SQL Server
,則不應在lambda表達式中使用方法調用。這些方法在.NET公共語言運行時的上下文之外沒有任何意義。
這個lambda表示當調用Tracer.Initializer()
時,將調用XmlConfigurator.Configure()
。
是的,把它想象成一種可以存儲在變量中的方法。
您也可以使用參數,如
(A)=> foo.func(一)