Я работаю с взаимодействием MS Excel в C # и не понимаю, как работает эта конкретная строка кода:
var excel = new Microsoft.Office.Interop.Excel.Application();
, где Microsoft.Office.Interop.Excel.Application представляет собой ИНТЕРФЕЙС, определяемый как:
[Guid("000208D5-0000-0000-C000-000000000046")]
[CoClass(typeof(ApplicationClass))]
public interface Application : _Application, AppEvents_Event
{
}
Я думаю, что какое-то волшебство происходит, когда интерфейс украшен атрибутом CoClass, но все же как это возможно, что мы можем создать экземпляр интерфейса с новым ключевым словом? Разве это не должно генерировать ошибку времени компиляции?