為什麼要使用委託

2021-09-27 11:40:54 字數 1343 閱讀 3782

使用c#,但是大多數時候用不上委託,但是委託被討論得非常多,於是陷入自我懷疑,我是不是太菜了?

我不禁問:為什麼要使用委託?

可能試圖了解過委託的同學,都被告知委託跟函式指標的關係,又或者被告知乙個生活化的舉例:委託就是委託別人執行一件事。

可能很多人嘗試了解委託的時候都停在這一步,他們了解了委託的寫法,尋思:委託也不能簡化寫法,而且做了和函式同樣的事情,為什麼要費勁巴拉的使用委託來間接完成函式呼叫呢?

想到這,我甚至有點生氣,為什麼他媽的要使用委託?

那就說說為什麼要他媽的使用委託!

class

program

}//第乙個類:product類,具有乙個string型別的屬性name,描述產品的名稱

class

product

}//第二個類:box類,具有乙個product型別的屬性,盒子中有乙個product

class

box}

//第三個類:裝箱,構造器接收乙個引數,引數為乙個委託型別,該委託返回乙個product型別的物件

//將引數返回的物件,放入box中,完成裝箱

class

wrapfactory

}//第四個類:product製造工廠,容納製造各種product的方法,方法數量可依需求擴充套件

//但特點是返回值均為product型別,無引數,即可被同一種委託型別呼叫

class

productfactory

public

product

maketoycar()

}

class

program

}class

logger

' created at .price is "

, product.name, datetime.utcnow, product.price);}

}class

product

public

double price

}class

box}

class

wrapfactory

box.product = product;

return box;}}

class

productfactory

;return product;

}public

product

maketoycar()

;return product;

}}

什麼是委託?為什麼要使用委託?什麼是事件?

1 什麼是委託?首先宣告乙個委託 public delegate string islengthfive string s 下面寫幾個方法 public string dowork string a public string dosomework string b public string do...

c 學習筆記 為什麼要使用委託

為什麼需要委託?為什麼不直接在mymethod方法裡直接呼叫add方法,反而要例項化乙個委託物件來完成呼叫呢?這豈不是自找麻煩嗎?當然,c 引入委託並不是自找麻煩。委託是c 最好的乙個特性,它為後來的很多特性都打下了基礎。委託使得乙個方法可以作為另乙個方法的引數進行傳遞,這就是委託最大的作用。如下例...

理解委託 delegate 及為什麼要使用委託

上述為官方說法,理解起來比較難,舉個生活中的例子 如何呼叫委託 用new關鍵字 將方法名作為引數 生成乙個委託物件,建立委託與方法的關聯。getvalue obj new getvlaue class.getvalue1 obj 3 result 3 getvalue obj new getvlau...