看板 C_Sharp 關於我們 聯絡資訊
namespace ConsoleApplication1 { class Program { class A { public Action WhenAection = null; public A(){ } public void FuncA() {/*一些程式碼*/ } public void FuncB() {/*一些程式碼*/ } /*下略,總而言之,很多方法*/ } static void Main(string[] args) { A a = new A(); a.WhenAection = a.FuncA; //====================================== A b = new A(); /* a.WhenAection = b.WhenAection; a.WhenAection.Target = a; 失敗,因為a.WhenAection.Target唯讀,不能用這種方法變更執行個體 */ } } } 請問在使用委派時,如何做到..... 如果 (a.WhenAection == a.FuncA) 就設定 b.WhenAection == b.FuncA (以此類推) 另外.... 不是很希望使用一堆if... else if 的陳述句 因為同一class下的方法很多 而且不少class都需要用到這種處理方式 -- 我就是喜歡從後面來 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.140.107.28 ※ 編輯: FF16 來自: 220.140.107.28 (10/02 11:16) ※ 編輯: FF16 來自: 220.140.107.28 (10/02 11:31)
b195f1a:不用判斷的有點困難,因為A跟B是不同的執行個體 10/02 21:03
b195f1a:要不然宣告public static Action WhenAection = null; 10/02 21:05
b195f1a:直接調用A.WhenAection 10/02 21:11
FF16:那樣的話,意思不一樣喔.... 10/03 06:22