小编klu*_*dby的帖子

在子类中使用event和delegate

为什么我不能使用从Base中声明的事件?

class Program
{
    static void Main(string[] args)
    {
        Sub sub = new Sub();
        sub.log += new Base.logEvent(sub_log);
        sub.go();
    }

    static void sub_log(string message, int level)
    {
        Console.Out.WriteLine(message + " " + level);
    }
}

public abstract class Base
{
    public delegate void logEvent(String message, int level);

    public event logEvent log;
}

public class Sub : Base
{

    public void go()
    {
        log("Test", 1); // <-- this wont compile
    }
}
Run Code Online (Sandbox Code Playgroud)

c# events delegates

6
推荐指数
1
解决办法
9168
查看次数

标签 统计

c# ×1

delegates ×1

events ×1