使用c++ MEX API创建MATLAB函数,提供c++程序的效率,并可以从MATLAB访问外部函数和库。c++ MEX API提供了以下特性:
采用现代C++编程特点和面向对象设计。
从MEX函数调用MATLAB函数。
无缝集成到MATLAB,从MATLAB获得输入并返回结果。
金宝app支持MATLAB数据类型和写时复制语义。
编写线程安全的多线程MEX函数。
在进程外执行c++ MEX函数。
请注意
函数在MATLAB中的c++ api中使用matlab::数据::数组
类定义的MATLAB数据API.如果您的MEX函数必须在MATLAB R2017b或更早版本中运行,或者如果您喜欢使用C语言,那么使用矩阵C API这与MX阵列
数据结构。有关更多信息,请参见用C语言调用MATLAB.
在不同的平台上构建MEX应用程序。
使用预定义的c++ MEX文件测试构建环境。
使用c++ 11特性和c++ Engine API实现MEX函数。
实现重写函数调用运算符的类()
创建一个仿函数对象。
避免复制大型数组以减少内存使用和提高执行速度的技术。
定制MEX函数
类以更好地处理MEX函数使用的资源。
检查输入的大小和类型,并在MATLAB中显示错误消息。
MEX函数可以在MATLAB命令窗口中显示输出。
行为时回调到MATLAB与异步的
请求等matlab::引擎::MATLABEngine:: fevalAsync
.
单元格和结构数组允许您在不复制整个数组的情况下写入数组内容。
定义正确的数据类型以在MATLAB和MEX函数之间传递数据。
调用MATLAB函数,从MEX函数传递参数并将参数返回给MEX函数。
捕获MEX函数中抛出的异常。
执行MATLAB语句在调用者的工作空间中创建变量。
MEX函数可以使用c++ Engine异步API从用户创建的线程调用MATLAB。
在与MATLAB进程分离的进程中执行C++ MeX函数。
将变量放入MATLAB基础和全局工作空间或从中获取变量。
将MATLAB对象传递给MEX函数。
您可以使用MEX函数来实现MATLAB类的方法。