Использование функций C ++ в Delphi - PullRequest
0 голосов
/ 16 декабря 2018

Я пытаюсь импортировать некоторые функции, созданные в библиотеке C ++, для использования в delphi.Вот библиотека, которую я пытаюсь использовать: https://github.com/NGSolve/netgen/blob/master/nglib/nglib.h

Я посмотрел на Google и обнаружил, что мне нужно создать файл .dll из этого заголовочного файла, а затем, каким-то образом,импортировать эти функции в Delphi.Проблема в том, что я не знаю, как я могу это сделать!

Можете ли вы, ребята, помочь мне?Заранее спасибо !!

Ответы [ 2 ]

0 голосов
/ 16 декабря 2018

Есть два основных способа сделать это.Оба требуют, чтобы вы сгенерировали DLL из кода.Я не могу дать подробное объяснение того, как это сделать.Но на моем сайте я даю вам подробности и пример кода.См. Ссылки ниже.

Два основных способа:

  • Свести объект .Оберните каждый метод объекта в простую функцию и экспортируйте его из DLL.Объект просто передается как некий дескриптор или нетипизированный указатель.Вы не можете использовать объект напрямую, поэтому нет необходимости вводить указатель или ручку. Это самое простое решение, но не такое удобное для пользователя DLL, как следующее:

  • Превратите ваш объект в интерфейс COM и напишите функцию для ее создания. Это далеко не просто, но значительно упрощает использование DLL.

Оба способа описаны в моей статье Использование объектов C ++ в Delphi .

Вы можете найти больше информации в других моих статьях:

0 голосов
/ 16 декабря 2018

Пока вы можете использовать только простые интерфейсы C API в Delphi.Поэтому, возможно, сначала попытайтесь обернуть API C ++ обычными вызовами функций C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...