MATLAB® предоставляет гибкому, двухстороннему интегрированию другие языки программирования, позволяя вам унаследованному коду повторного использования. Для списка языков программирования и поддерживаемых версий, смотрите MATLAB Поддерживаемые Интерфейсы на Другие Языки.
MATLAB обеспечивает эти функции, чтобы помочь вам интегрировать алгоритмы C/C++ в свои приложения MATLAB.
Совместно использованный интерфейс библиотеки C является набором функций, динамически загруженных приложением во время выполнения. Пользование разделяемой библиотекой имеет преимущество упаковки нескольких библиотечных функций в один интерфейс. Кроме того, MATLAB справляется с преобразованиями типа данных.
Вызывать функции в C совместно использовало библиотеку, используйте функцию calllib
. Для получения информации смотрите Вызов C Библиотечные функции. Эта функция работает лучше всего с библиотеками C-only, но имеет эти ограничения.
Если вы хотите больше управления преобразованием данных и управления памятью, рассматриваете запись файла MEX.
Файл MEX является кодом обертки вокруг алгоритма C/C++, который обрабатывает преобразование типов данных MATLAB к типам C. Файлы MEX обеспечивают лучшую производительность, чем вызывание функций через MATLAB совместно использовало интерфейсы библиотеки. Кроме того, файлы MEX дают вам больше программируемого контроля над преобразованием данных и управления памятью.
Приложения C++ MEX используют C++ 11 функций программирования и, если это возможно, совместно использованные копии данных.
Приложения файла MEX на C пользуются матричной библиотекой C, и поддержан для существующих MEX-функций. MathWorks рекомендует, чтобы, когда это возможно, выберите приложения C ++ MEX over C MEX file.
Эти функции требуют, чтобы навыки программирования C/C++ создали интерфейс библиотеки или записали MEX-функцию. Однако можно дать получившейся библиотеке или MEX-функции к любому пользователю MATLAB. Конечный пользователь вызывает функциональность как любая функция MATLAB, не зная базовые детали реализации языка C/C++.
Чтобы вызвать MATLAB из программы языка C/C++, смотрите Engine API для C++ или Engine API для C.
Если у вас есть функции и объекты на другом языке программирования, можно вызвать их от MATLAB. Вы не должны быть разработчиком программного обеспечения, чтобы интегрировать эти объекты в ваше приложение MATLAB. Однако вам нужен доступ к сторонней документации для библиотек.
MATLAB поддерживает функции вызова и использование объектов на следующих языках.
Можно вызвать MATLAB с другого языка, использующего Приложения Engine. Используя API движка MATLAB, вызовите функции MATLAB из своего собственного приложения. MATLAB имеет API для следующих языков.
Чтобы создать приложение механизма, установите поддерживаемый MATLAB компилятор и используйте команду mex
, чтобы создать приложение.
Можно записать собственные функции и вызвать их как функции MATLAB с помощью API MEX. Можно написать MEX-функции в следующих языках.
Чтобы создать файл MEX, установите поддерживаемый MATLAB компилятор и используйте команду mex
, чтобы создать функцию.
Можно связаться с веб-сервисами из MATLAB.
MATLAB функции веб-сервисов RESTful позволяет непрограммистам получать доступ ко многим веб-сервисам с помощью методов HTTP GET и POST.
Для функциональности, не поддержанной функциями веб-сервисов RESTful, используйте классы Интерфейса HTTP для записи индивидуально настраиваемых приложений веб-доступа.
Если ваш веб-сервис основан на технологиях документа Языка описания веб-сервисов (WSDL), то используйте функции WSDL MATLAB.