将Matlab转换为C ++

时间:2011-10-11 19:50:43

标签: c++ visual-studio matlab matlab-deployment matlab-compiler

我需要将一些MATLAB代码转换为C ++。我正在使用Visual Studio 2010并安装了MATLAB编译器。我想知道如何做到这一点。

当我发布我的项目时,最终用户是否必须通过MATLAB安装任何东西? (情况不是这样)

3 个答案:

答案 0 :(得分:3)

您可以compile Matlab scripts进入独立的可执行文件,但我不熟悉将Matlab代码转换为Visual C ++代码的Matlab工具。您可以 使用Simulink Coder(以前的Real-Time Workshop)将Matlab代码转换为C或C ++,Mathworks可以将其作为单独的产品提供。

要运行独立可执行文件,用户必须安装Matlab Compiler Runtime。来自Matlab Compiler web page

  

使用MATLAB Compiler产品创建的可执行文件和库使用称为MATLAB编译器运行时(MCR)的运行时引擎。 MCR随MATLAB编译器一起提供,可与您的应用程序一起分发,并可免费部署。

答案 1 :(得分:2)

你不会摆脱Matlab运行时。我经常使用Matlab编译器时遇到问题。它基本上就像是围绕Matlab运行时的包装器,生成笨拙的代码并且确实为部署引入了许多问题。 C替代品......?我找不到任何东西。所以我最近切换到ilnumerics,就像C#中的Matlab一样 - 只是更快,不需要翻译。它到目前为止效果很好,因为我们无论如何都使用ASP.NET,因此可以节省语言之间的跳跃,并且可以直接使用ilnumerics的3d图。

答案 2 :(得分:0)

您拥有的另一个选择是使用MATLAB Engine。它可能不是实时应用程序的选项,但除此之外它真的很好。您基本上可以直接从C ++调用MATLAB函数。将显示数字(图表),就像您运行本地MATLAB一样。程序启动时,会创建一个MATLAB控制台。