[問題] 委派和事件

看板C_Sharp (C#)作者 (大笨羊)時間14年前 (2011/06/21 19:19), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
大家好 我是一個C#新手 我想問有關event和delegate的事情 書上講說event是delegate的集合體 所以假設我今天有一個委派如下 delegate void Something (string Message); 並且實做他 Someting s1=new Something(FunctionA); 造書上說 一個Delegate有一個方法可以使用 但是 如果要多個方法同時使用 就須使用event 例如某個類別裡面 class A{ public event Something SomethingEvent=null; } 實作如下: Something s1=new Something(FunctionA); Something s2=new Something(FunctionB); A.SomethingEvent +=s1; A.SomethingEvent +=s2; 但是 我想問的是 如果沒有使用 event 改用 特性 去實作 例如: class B{ public Something myDelegate{get; set;} } B.myDelegate+=s1; B.myDelegate+=s2; 的結果是一樣的 那event的用法到底是甚麼? 這樣不是很雞肋嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.228.225.223

06/21 20:18, , 1F
property是get/set, event是add/remove 不一樣 @@
06/21 20:18, 1F

06/21 20:18, , 2F
請在這個版搜event或delegate吧...
06/21 20:18, 2F
文章代碼(AID): #1E07vPv6 (C_Sharp)
文章代碼(AID): #1E07vPv6 (C_Sharp)