События и делегаты, разница - C#

Узнай цену своей работы

Формулировка задачи:

using System;
 
delegate void del();
 
class A
{
    public static del d;
    public static event del e;
 
    public static void RunEvent()
    {
        if (e != null) e();
    }
}
 
class Program
{
    static void func1()
    {
        Console.WriteLine("func 1");
    }
 
    static void func2()
    {
        Console.WriteLine("func 2");
    }
 
    static void Main()
    {
        A.d = func1;
        A.d += func2;
        A.d();
 
        A.e += func1;
        A.e += func2;
        A.RunEvent();
    }
}
В чем особое отличие использование события от делегата, если событие можно заменить делегатом?

Решение задачи: «События и делегаты, разница»

textual
Листинг программы
using System;
 
delegate void del();
 
class A
{
    public static del d;
    public static event del e;
 
    public static void RunEvent()
    {
        if (e != null) e();
    }
}
 
class Program
{
    static void func1()
    {
        Console.WriteLine("func 1");
    }
 
    static void func2()
    {
        Console.WriteLine("func 2");
    }
 
    static void Main()
    {
        A.d = null;
        A.e = null;
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.25 из 5