MATLAB中的数据流,输入数据来自C++;可执行 我对MATLAB完全陌生,我想知道我对C++文件的数据流的选择是什么。

MATLAB中的数据流,输入数据来自C++;可执行 我对MATLAB完全陌生,我想知道我对C++文件的数据流的选择是什么。,c++,matlab,streaming,matlab-engine,C++,Matlab,Streaming,Matlab Engine,我听说过使用MATLAB“engine”实现这一目的,还有一些方法,如engPutVariable等,但是有人能给我一个详细的例子来说明如何去做吗?我正在尝试实现正弦波流,但是通过一个简单的示例发送一组样本数据就足够了。您有两个选项:matlab引擎和mex函数。需要注意的是,MatlabAPI是单线程的。绝对没有办法让用户看到后台线程。充其量,UI事件存在中断 使用Matlab引擎,应用程序是一个使用MATLAB作为外加库的C++应用程序。你可以从C++调用MATLAB函数,但是你必须确保只有

我听说过使用MATLAB“engine”实现这一目的,还有一些方法,如engPutVariable等,但是有人能给我一个详细的例子来说明如何去做吗?我正在尝试实现正弦波流,但是通过一个简单的示例发送一组样本数据就足够了。

您有两个选项:matlab引擎和mex函数。需要注意的是,MatlabAPI是单线程的。绝对没有办法让用户看到后台线程。充其量,UI事件存在中断

使用Matlab引擎,应用程序是一个使用MATLAB作为外加库的C++应用程序。你可以从C++调用MATLAB函数,但是你必须确保只有一个线程在任何时间点访问MATLAB。因此,您可以有一个线程,该线程将来自应用程序其余部分的输入队列中的数据提供给Matlab。C++可以有多个线程,但是只有一个可以与Matlab交互。


另一种方法是让MATLAB控制主应用程序,并且在需要更多数据时调用C++代码。C++代码充当了Matlab的插件。C++代码可以有多个线程,但是当M文件调用它时,MATLAB会对C++进行轮询。请查阅有关MEX功能的文档。

谢谢!这至少会让我清醒一点,这样我就可以开始了。