Чем события лучше делегатов? - C#

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

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

Доброго времени суток господа, чем события лучше делегатов, чем лучше закомментированный вариант. Спасибо.
using System;
using System.Linq;
 
namespace LINQ_TEST_CS
{
    class ClassCounter
    {
        public delegate void MethodContainer();
 
        //public event MethodContainer onCount;
        public MethodContainer OnCount;
 
        public void Count()
        {
            for (int i = 0; i < 100; i++)
            {
                if (i == 71)
                {
                    //onCount?.Invoke();
                    OnCount?.Invoke();
                }   
            }  
        }
    }
 
    class Handler_I
    {
        public void Message()
        {
            Console.WriteLine("Пора действовать, ведь уже 71!"); 
        }                                                        
    }
 
    class Handler_II
    {
        public void Message()
        {
            Console.WriteLine("Точно, уже 71!");
        }    
    }
 
    class Program
   {
        static void Main(string[] args)
        {
            ClassCounter counter = new ClassCounter();
 
            Handler_I handler_I = new Handler_I();
            Handler_II handler_II = new Handler_II();
 
            //counter.onCount += handler_I.Message;
            //counter.onCount += handler_II.Message;
            counter.OnCount += handler_I.Message;
            counter.OnCount += handler_II.Message;
 
            counter.Count();
        }
    }
}

Решение задачи: «Чем события лучше делегатов?»

textual
Листинг программы
using System;
 
namespace ConsoleApp789
{
    class Program
    {
        static void Main(string[] args)
        {
            var foo = new Foo();
            foo.Handler = null;
        }
    }
    class Foo
    {
        public event EventHandler<EventArgs> Handler = (o, e) => { };
    }
}

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


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

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

6   голосов , оценка 4 из 5
Похожие ответы