Суть в том, что стоит ли делать интерфейс в условном редакторе Delphi, а код писать на том же Си, подключая его в качестве DLL?
Сделать это возможно, но стоит ли? Или есть более элегантные решения, кроме самого WinApi?
А задача-то в чём? Или в чём проблема? И при чём тут WinApi? Что мешает делать всё на одном языке и в одной среде разработки? Уточните.
Пока напрашивается ответ - не стоит. А зачем?
Сделать такое можно и работать будет достаточно стабильно. Сложности только в постоянных пробросах данных между длл и хостом. Сделать можно на интерфейсах, но всё равно чем дальше, тем больше будет интерфейсов на каждый чих.
Всё же, может вопрос чуть глубже поставить? Зачем вообще тогда нужен Си? Скорость работы программы на Делфи почти не уступает Си, а само написание кода куда проще и удобнее.
Дельфи и конкретно Паскаль это язык общего назначения феноменальной разницы вы не увидите. Плюс почему не C# ? Все будет в одном проекте минус головная боль о памяти
Владимир Коротенко, у ТС может быть уже большая часть кода на плюсах, от этого и такой вопрос. И естественно он хочет более удобный и гибкий редактор GUI.
Про двух специалистов тоже спорно. ТС же не просто так задал такой вопрос. Если, конечно, он не считает так, что если сам код на плюсах, то летать будет быстрее всех, что, на самом деле не совсем корректно и/или далеко от истины.
В делфи, на самом деле, если создавать проект на компонентах (речь не только о компонентах, которые ставятся отдельно или идут базово и тем более речь не только о графических компонентах), то освобождать ни чего тоже не нужно. Т.к. всё регулируется механизмом владения (Owner). Т.е. все классы, унаследованные от TComponent (это базовый класс, который может использовать как хочется) и созданные корректным образом (в конструкторе указан владелец), будут уничтожаться автоматически при уничтожении родителя.
Так же, если использовать интерфейсы, то в игру уже вступаем механизм подсчета ссылок. Что, к слову, при интеграции DLL и так будет использоваться.