Редактирование: Сравнение Языков Программирования

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

ПРЕДУПРЕЖДЕНИЕ: Длина этой страницы составляет 168 килобайт. Страницы, размер которых приближается к 32 КБ или превышает это значение, могут неверно отображаться в некоторых браузерах. Пожалуйста, рассмотрите вариант разбиения страницы на меньшие части.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 2351: Строка 2351:
}
}
-
Ключевое слово ''event'' в '''C#''' позволяет уменьшить объём кода, необходимого для реализации событийной модели взаимодействия на делегатах. Иначе говоря, это такой синтаксический сахар для упрощения работы с обратными вызовами.
+
Event в C# (грубо говоря, это эмуляция асинхронности):
using System;
using System;
Строка 2358: Строка 2358:
public class Metronome
public class Metronome
{
{
-
public event TickHandler Tick; // объявляем событие Tick
+
public event TickHandler Tick; // !
public EventArgs e = null;
public EventArgs e = null;
public delegate void TickHandler(Metronome m, EventArgs e);
public delegate void TickHandler(Metronome m, EventArgs e);
Строка 2368: Строка 2368:
if (Tick != null)
if (Tick != null)
{
{
-
Tick(this, e); // генерируем событие Tick
+
Tick(this, e);
}
}
}
}
Строка 2377: Строка 2377:
public void Subscribe(Metronome m)
public void Subscribe(Metronome m)
{
{
-
// регистрируем обработчик события Tick
 
m.Tick += new Metronome.TickHandler(HeardIt);
m.Tick += new Metronome.TickHandler(HeardIt);
}
}
Строка 2397: Строка 2396:
}
}
}
}
 +
 +
Если удалить ключевое слово event, то слушающий класс не будет оповещен о событии (предположительно, могу ошибаться).
; Замечание
; Замечание

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Шаблоны, использованные на этой странице:

Личные инструменты
Разделы