代码已编译并成功运行但预期输出为打印“Sub”未打印。这段代码中的错误是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码已编译并成功运行但预期输出为打印“Sub”未打印。这段代码中的错误是什么?相关的知识,希望对你有一定的参考价值。

这段代码有什么问题?

namespace ConsoleApplication1
{
public delegate void del();

class Program
{
    static void Main(string[] args)
    {
        del d = new del(add);
        d += sub;
    }

    public static void add()
    {
        Console.WriteLine("add");
    }

    public static void sub()
    {
        Console.WriteLine("Sub");
    }
  } 
}
答案

您需要调用您的委托:

class Program
{
    static void Main(string[] args)
    {
        del d = new del(add);
        d += sub;

        d.Invoke();
    }

    public static void add()
    {
        Console.WriteLine("add");
    }

    public static void sub()
    {
        Console.WriteLine("Sub");
    }
  } 
}

以上是关于代码已编译并成功运行但预期输出为打印“Sub”未打印。这段代码中的错误是什么?的主要内容,如果未能解决你的问题,请参考以下文章