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

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

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

Листинг программы
  1. using System;
  2. delegate void del();
  3. class A
  4. {
  5. public static del d;
  6. public static event del e;
  7. public static void RunEvent()
  8. {
  9. if (e != null) e();
  10. }
  11. }
  12. class Program
  13. {
  14. static void func1()
  15. {
  16. Console.WriteLine("func 1");
  17. }
  18. static void func2()
  19. {
  20. Console.WriteLine("func 2");
  21. }
  22. static void Main()
  23. {
  24. A.d = func1;
  25. A.d += func2;
  26. A.d();
  27. A.e += func1;
  28. A.e += func2;
  29. A.RunEvent();
  30. }
  31. }
В чем особое отличие использование события от делегата, если событие можно заменить делегатом?

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

textual
Листинг программы
  1. using System;
  2.  
  3. delegate void del();
  4.  
  5. class A
  6. {
  7.     public static del d;
  8.     public static event del e;
  9.  
  10.     public static void RunEvent()
  11.     {
  12.         if (e != null) e();
  13.     }
  14. }
  15.  
  16. class Program
  17. {
  18.     static void func1()
  19.     {
  20.         Console.WriteLine("func 1");
  21.     }
  22.  
  23.     static void func2()
  24.     {
  25.         Console.WriteLine("func 2");
  26.     }
  27.  
  28.     static void Main()
  29.     {
  30.         A.d = null;
  31.         A.e = null;
  32.     }
  33. }

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут