Интегрируйте MATLAB со сторонними языками программирования и системами

MATLAB® обеспечивает гибкую, двухстороннюю интеграцию с другими языками программирования, позволяя вам повторно использовать сторонний код. Для списка языков программирования и поддерживаемых версий, смотрите MATLAB Поддерживаемые Интерфейсы на Другие Языки.

Вызовите Код C/C++ из MATLAB

MATLAB обеспечивает эти функции, чтобы помочь вам интегрировать алгоритмы C/C++ в свои приложения MATLAB.

  • Совместно использованный интерфейс библиотеки C/C++ является набором функций, динамически загруженных приложением во время выполнения. Пользование разделяемой библиотекой имеет преимущество упаковки нескольких библиотечных функций в один интерфейс. Кроме того, MATLAB справляется с преобразованиями типа данных.

    • Вызовите Библиотечные функции C++ - Чтобы вызвать функции в совместно использованной библиотеке C++, использовать clib пакет описан в Библиотеках C++.

    • Каждый раз, когда возможно, предпочтите интерфейс C++ интерфейсу C-only. Для получения информации о поддержке C++ смотрите эти ограничения.

    • Вызывать функции в C совместно использовало библиотеку, используйте calllib функция. Для получения информации см. Библиотеки C. Эта функция работает лучше всего с библиотеками C-only, но имеет эти ограничения.

    Если вы хотите больше управления преобразованием данных и управления памятью, рассматриваете запись файла MEX.

  • Файл MEX является кодом обертки вокруг алгоритма C/C++, который обрабатывает преобразование типов данных MATLAB к типам C. Файлы MEX обеспечивают лучшую производительность, чем вызывание функций через MATLAB совместно использовало интерфейсы библиотеки. Кроме того, файлы MEX дают вам больше программируемого контроля над преобразованием данных и управления памятью.

    • Приложения C++ MEX используют современные функции программирования на C++ и, если это возможно, совместно использованные копии данных.

    • Приложения файла MEX на C используют Матричный API C, и поддерживается для существующих MEX-функций. MathWorks рекомендует, чтобы, когда это возможно, выберите приложения C ++ MEX over C MEX file. Однако, если ваши MEX-функции должны запуститься в MATLAB R2017b или ранее, то запишите MEX-функции с матричной библиотекой C.

    • Если вы имеете несколько функций в библиотеке или не имеете проблем производительности, рассматриваете запись интерфейса библиотеки C++.

Эти функции требуют, чтобы навыки программирования C/C++ создали интерфейс библиотеки или записали MEX-функцию. Однако можно дать получившейся библиотеке или MEX-функции к любому пользователю MATLAB. Конечный пользователь вызывает функциональность как любая функция MATLAB, не зная базовые детали реализации языка C/C++.

Чтобы вызвать MATLAB из программы языка C/C++, смотрите API MATLAB Engine API для C++ или MATLAB Engine для C.

Используйте объекты с других языков программирования в MATLAB

Если у вас есть функции и объекты на другом языке программирования, можно вызвать их из MATLAB. Вы не должны быть разработчиком программного обеспечения, чтобы интегрировать эти объекты в ваше приложение MATLAB. Однако вам нужен доступ к сторонней документации для библиотек.

MATLAB поддерживает функции вызова и использование объектов на следующих языках.

Вызовите MATLAB с другого языка программирования

Можно вызвать MATLAB с другого языка, использующего Приложения Engine. Используя API движка MATLAB, вызовите функции MATLAB из своего собственного приложения. MATLAB имеет API для следующих языков.

Чтобы создать приложение механизма, установите поддерживаемый MATLAB компилятор и используйте mex команда, чтобы создать приложение.

Вызовите свои функции как функции MATLAB

Можно записать собственные функции и вызвать их как функции MATLAB с помощью API MEX. Для получения дополнительной информации смотрите MEX Applications Выбора. Можно написать MEX-функции в следующих языках.

Чтобы создать файл MEX, установите поддерживаемый MATLAB компилятор и используйте mex команда, чтобы создать функцию.

Свяжитесь с веб-сервисами

Можно связаться с веб-сервисами из MATLAB.

  • Функции веб-сервисов MATLAB RESTful позволяют непрограммистам получать доступ ко многим веб-сервисам с помощью методов HTTP GET и POST.

  • Для функциональности, не поддержанной функциями веб-сервисов RESTful, используйте классы Интерфейса HTTP в записи индивидуально настраиваемых приложений веб-доступа.

  • Если ваш веб-сервис основан на технологиях документа Языка описания веб-сервисов (WSDL), то используйте функции WSDL MATLAB.

Похожие темы

Внешние веб-сайты