Синтаксис:
delegate тип_возвращаемого_значения имя_делегата (список_параметров);
Характерной особенностью делегата является возможность его использования для вызова любого метода, который соответствует подписи делегата. Это дает возможность определить, какой из методов должен быть вызван, во время выполнения программы. Вызываемый метод может быть методом экземпляра, ассоциированным с объектом, либо статическим методом, ассоциированным с классом. Метод можно вызывать только в том случае, если его подпись соответствует подписи делегата.