作者FF16 (好无聊)
看板C_Sharp
标题[问题] 指向物件的「方法群组」
时间Sat Oct 2 11:07:04 2010
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)
1F:推 b195f1a:不用判断的有点困难,因为A跟B是不同的执行个体 10/02 21:03
2F:→ b195f1a:要不然宣告public static Action WhenAection = null; 10/02 21:05
3F:推 b195f1a:直接调用A.WhenAection 10/02 21:11
4F:→ FF16:那样的话,意思不一样喔.... 10/03 06:22