Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Здравствуйте, Serginio1, Вы писали:
EP>>>>>Причём тут "во время исполнения"? Ты свой класс, для которого нужен IDispatch, меняешь в runtime? Ты этого не говорил в условии
S>>>> Я беру любую нетовскую сборку и использую её.
EP>>>От native варианта ты что хочешь? Взять любую DLL и сделать к ней wrapper?
S>> Мой врапер работает с любой DLL без предварительного описания. В рефлекшине все есть.
EP>Нет, не с любой
Докажи.
S>>>>Есть свои сборки. То есть любую без предварительного описания.
EP>>>Ещё раз, SWIG не требует предварительного описания.
S>> А что делает SWIG? Ты должен получить врапер причем статически. Или он компилирует на лету по исходникам?
EP>Он делает весь glue code по исходникам.
Ну вот, а говоришь, что не требует предварительного описания.
S>>>>Нету у вас рефлекшина.
EP>>>Нету, это недостаток, сейчас кое-как эмулируется. При этом reflection не обязательно должен быть runtime — он может быть compile-time, и такой скорей всего и введут.
S>> А зачем рефлекшн в compile-time? Он нужен как раз в runtime.
EP>Нет, нам-то как раз нужен в compile-time. Из compile-time reflection нетрудно перейти в runtime, а вот обратно уже нет.
EP>По факту же большинство случаев использования refleciton прекрасно укладываются в compile-time.
У нас все в реал тайме. Можно подкинуть любую сборку и работать либо по утинной типизации, либо по информации о типе
S>>>>В Net value тип боксится
EP>>>В C++ объект любого типа можно создать где угодно (не считая несколько экстремальных случаев к теме не относящихся) — в любой кучке байт достаточного размера
S>>Кстати в примерах только value типы. Нет там примеров с объектами, типами итд.
S>>Как ваш описатель врапера разберется с зоопарком менеджеров памяти?
EP>Каким зоопарком? Ты о чём?
То есть у вас как в Delphi один менеждер памяти? Все классы поддерживают подсчет ссылок?