Эвент или поле или свойство - C#

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

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

У меня такой вопрос: а зачем вообще писать event при объявлении события? Я хочу сказать там же все равно делегат типом пишется, так значит можно наверное просто объявить поле или свойство типа этого делегата... И с тем же успехом его где то вызывать. Скажем например так:
class A
{
    public event Action SomeEvent1;
    public Action SomeEvent2;
    public Action SomeEvent3 { get; }
    
    public OnSomeEvent()
    {
        SomeEvent1?.Invoke();
        SomeEvent2?.Invoke();
        SomeEvent3?.Invoke();
    }
}

Решение задачи: «Эвент или поле или свойство»

textual
Листинг программы
class B
{
    public void DoEvil(A a)
    {
        a.SomeEvent1 = null;
        a.SomeEvent2 = null;
        a.SomeEvent3 += () => { };
        a.SomeEvent3();
    }
}

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


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

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

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