// 2種形式都是宣告委託的形式
// 2.0以前 c# 命名方法是宣告委託的唯一方法 c# 2.0 之後引入匿名方法
// c#3.0以及更高版本中 使用lambda表示式 取代了匿名方法 作為編寫內聯**的首選方式
// 匿名方法
delegate void anonymity(int x);
anonymity m_anonymity = delegate (int x) ;
// lambda表示式 作用用於匿名函式一樣,僅僅是語法不同
delegate bool delelambda(int x, int y);
delegate int delelambda_a(int x);
delegate void delelambda_b();
delegate void delelambda_c();
private void start()
m_anonymity(11);
// 1.拉姆達表示式
// <1> 括號中的2個或更多的引數 使用逗號分隔
delelambda m_delelambda = (x, y) => x == y;
bool isequal = m_delelambda(3, 3);
debug.log(isequal);
// <2> 如果lambda 表示式僅有乙個引數的時候 可以省略括號
delelambda_a m_delelambda_a = y => y + 3;
int result = m_delelambda_a(3);
debug.log(result);
// <3> 無引數的情況 使用空括號表示
delelambda_b m_delelambda_b = () => somefunc();
m_delelambda_b();
// 語句lambda
delelambda_c m_delelambda_c = () => ;
m_delelambda_c();
void somefunc() {
debug.log("delelambda_b");
void somefunc_b(int i) {
debug.log("i=" + i);
匿名委託與Lambda表示式
通過使用匿名委託 匿名方法 使程式設計變得更加靈活,有關委託與匿名委託請參考我的前一篇blog 委託與匿名委託 繼續之前示例,如下 static void main string args worker worker new worker int result worker.handletwonum...
Lambda表示式 匿名方法 委託
lambda表示式 匿名方法 委託 16 9 2017 代替匿名方法的簡單演示 using system using system.collections.generic using system.linq using system.text using system.threading.tasks...
委託 匿名方法 lambda表示式
使用delegate的時候很多時候沒必要使用乙個普通的方法,因為這個方法只有這個delegate會用,並且只用一次,這時候使用匿名方法最合適。匿名方法就是沒有名字的方法。mydelegate p delegate int s 在il中編譯器是給匿名方法生成了名字的 actiona1 delegate...