将static Action作为参数传递

时间:2012-07-22 14:21:49

标签: c#

我要做的是:

public static Action<string> action_thread_ended { get; private set; }

public static void action_set(Action<string> target, Action<string> source)
{
    target += source;
}

用法(来自不同类)

MyClassName.action_set(MyClassName.action_thread_ended, Console.WriteLine);

结果:没什么

我当然是在尝试这样做,以防止必须为班级中的每个Action创建一个action_set函数。

这可能吗?

1 个答案:

答案 0 :(得分:0)

代表是不可变的。

target += source创建一个新的委托实例,并使target参数引用它 您传递的财产不受影响。