主要内容

集成MATLAB外部编程语言和系统

MATLAB®提供与其他编程语言的灵活的双向集成,允许您重用遗留代码。有关编程语言和受支持版本的列表,请参见金宝appMATLAB支金宝app持其他语言的接口

调用C/ c++代码MATLAB

MATLAB提供这些特性来帮助您将C/ c++算法集成到MATLAB应用程序中。

  • C/ c++共享库接口是应用程序在运行时动态加载的函数的集合。使用共享库具有将多个库函数打包到一个接口中的优点。此外,MATLAB还管理数据类型转换。

    • 调用c++库函数-要调用c++共享库中的函数,请使用clib包描述在MATLAB中的c++库

    • 只要可能,选择c++接口而不是C-only接口。有关c++支持的信息,请参阅这些金宝app限制

    • 要调用C共享库中的函数,请使用calllib函数。有关信息,请参见MATLAB中的C库.该特性最适合c类库,但有以下几个限制

    如果您希望对数据转换和内存管理有更多的控制,可以考虑编写MEX文件。

  • MEX文件是围绕C/ c++算法的包装器代码,该算法处理MATLAB数据类型到C类型的转换。相比通过MATLAB共享库接口调用函数,MEX文件提供了更好的性能。此外,MEX文件为您提供了对数据转换和内存管理的更多编程控制。

    • c++ MEX应用程序使用现代c++编程特性,并在可能的情况下共享数据副本。

    • C MEX文件应用使用C矩阵API并支持现有的M金宝appEX功能。MathWorks建议尽可能选择c++ MEX而不是C MEX文件应用程序。但是,如果您的MEX函数必须在MATLAB R2017b或更早版本中运行,则使用C矩阵库编写MEX函数。

    • 如果库中有多个函数,或者没有性能问题,可以考虑编写c++库接口。

这些特性需要C/ c++编程技能来创建库接口或编写MEX函数。但是,您可以将生成的库或MEX函数提供给任何MATLAB用户。终端用户像调用任何MATLAB函数一样调用该函数,而不知道C/ c++语言实现的底层细节。

若要从C/ c++语言程序调用MATLAB,请参见MATLAB引擎API的c++MATLAB Engine API for C

使用来自其他编程语言的对象MATLAB

如果你有其他编程语言的函数和对象,你可以从MATLAB调用它们。将这些对象集成到MATLAB应用程序中并不需要成为软件开发人员。但是,您需要访问这些库的第三方文档。

MATLAB支金宝app持在以下语言中调用函数和使用对象。

调用MATLAB另一种编程语言

您可以从另一种语言调用MATLAB应用程序引擎.使用MATLAB引擎api,从您自己的应用程序调用MATLAB函数。MATLAB为以下语言提供了api。

要创建引擎应用程序,请安装MATLAB支持的编译器并使用金宝app墨西哥人命令来构建应用程序。

调用你的函数MATLAB功能

您可以编写自己的函数,并使用MEX api将它们作为MATLAB函数调用。有关更多信息,请参见选择MEX应用程序.您可以使用以下语言编写MEX函数。

若要创建MEX文件,请安装MATLAB支持的编译器并使用金宝app墨西哥人命令来构建函数。

与Web服务通信

您可以通过MATLAB与web服务通信。

  • MATLABrest式web服务功能允许非程序员使用HTTP GET和POST方法访问许多web服务。

  • rest式web服务函数不支持的功能,请使用金宝appHTTP接口类用于编写定制的web访问应用程序。

  • 如果您的web服务基于web服务描述语言(WSDL)文档技术,那么请使用MATLABWSDL功能

相关的话题

外部网站