Интерфейсы используются для определения функциональности реализующих их классов. Интерфейсы могут содержать свойства, методы, события и индексаторы, но экземпляр интерфейса не может быть создан и интерфейс не содержит реализации этих функций.
Делегаты – это типы, которые ссылаются на методы. Они похожи на указатели функций в С++, но разрешают создавать экземпляр класса и вызывать как статические методы класса, так и методы конкретного экземпляра класса. Делегаты позволяют во время исполнения определять, какой метод из указанного набора необходимо вызвать.
Структура имеет тип по значению. Для инициализации структуры используется оператор new. Структура инициализируется (0) сразу после своего объявления. Компилятор не позволяет копировать одну структуру в другую до ее инициализации.
Читать далее...