同時將自己深入到C#的更高級功能,我遇到了一些代碼,我並不完全知道它們之間的區別。這是關於這兩條線:Func <>與代表和lambda表達式之間的區別
Func<string, int> giveLength = (text => text.Length);
和
Func<string, int> giveLength = delegate(string text) { return text.Length; };
這可以以同樣的方式被使用:
Console.WriteLine(giveLength("A random string."));
所以基本上..是什麼這兩條線的區別?這些行是否編譯爲相同的CIL?
謝謝喬恩。順便說一句,我最近開始閱讀你的電子書「深入C#」。很有幫助! –
@memetolsen:缺點是,如果您在這裏閱讀了足夠的答案,您將閱讀本書的大部分內容;) –
我認爲我的三分之一upvotes是你的答案。但是,我寧願在業餘時間閱讀這本書,而不是閱讀22,284個答案:) –