1. 普通繫結:
public void button1_click(objectsender, eventargs e)2. 匿名委託:this.button1.click += button1_click;
this.button1.click += delegate(objectsender, eventargs e)3. lamda表示式:;
this.button1.click += ((sender, e) =>編譯器會自動推算出表示式中的型別。);
4. 過濾條件:
listusers = new list();等同於:funcbool> predicate =(
(user) =>
);listtemps = users.where(predicate).tolist();
listtemps = users.where(p => p.userid > 100).tolist();
listtemps = (from p in users where p.userid > 100 select p).tolist();
listusers = new list();單挑語句時不需要使用{},同時可以不使用return來返回結果。funcbool> predicate =(
(user) => user.userid > 100);
listtemps = users.where(predicate).tolist();
5. 排序:
listusers = new list();listtemp1 = users.orderby(p=>p.userid).tolist();
funcint> orderby = (user =>user.userid);
listtemp2 = users.orderby(orderby).tolist();
學習C lambda表示式(一)
前言 lambda是c 11新增的,因此對你的編譯器是有要求的。比如你用的是visual studio,那麼版本要求是vs2011之後的。lambda是一種定義匿名函式物件的簡潔方式,可以接受引數 儲存狀態 返回值以及跨越多行。lambda表示式可提高c 程式設計速度和效率,推薦讀者盡可能使用它們。...
學習C lambda表示式(二)
上篇已經介紹了lambda的基本概念 一元函式對應的lambda以及一元謂詞對應的lambda表示式 這篇將繼續介紹lambda表示式的其它應用。上篇中建立了乙個一元謂詞,當整數能被2整除時返回true。現在如果要改變指定的除數,可通過lambda表示式的捕獲列表。int divisor 3 除數 ...
C lambda表示式 學習筆記
auto f void fcn1 v1 0 auto j f j 42 void fcn2 v1 0 auto j f j 0 void fcn3 v1 0 auto j f j 43 void fcn4 v1 0 auto j f j 1 當可呼叫物件只能接受乙個引數,但是需要兩個或者多個引數才能...