5

一部の MATLAB コードを C++ に変換する必要があります。Visual Studio 2010 を使用しており、MATLAB コンパイラがインストールされています。私はこれをどのように行うのだろうかと思っています。

また、プロジェクトを公開するとき、エンド ユーザーは MATLAB で何かをインストールする必要がありますか? (これはあり得ません)

4

3 に答える 3

3

Matlabスクリプトをスタンドアロンの実行可能ファイルにコンパイルできますが、MatlabコードをVisualC++コードに変換するMatlabツールに精通していません。Mathworksから別の製品として入手できるSimulinkCoder(以前のReal-Time Workshop)を使用、MatlabコードをCまたはC++に変換できます。

スタンドアロンの実行可能ファイルを実行するには、ユーザーはMatlabコンパイラランタイムをインストールする必要があります。MatlabコンパイラのWebページから:

MATLABコンパイラ製品で作成された実行可能ファイルとライブラリは、MATLABコンパイラランタイム(MCR)と呼ばれるランタイムエンジンを使用します。MCRには、アプリケーションで配布するためのMATLABコンパイラが付属しており、ロイヤリティフリーで展開できます。

于 2011-10-11T20:27:40.180 に答える
2

Matlab ランタイムは削除されません。Matlab Compiler の使用時に問題が発生することがよくありました。これは基本的に、Matlab ランタイムのラッパーのようなものであり、ぎこちないコードを生成し、展開に多くの問題をもたらしました。C 代替案 ... ? 何も見つかりませんでした。だから私は最近ilnumericsに切り替えました.C#のMatlabのようなものです.はるかに高速で翻訳は必要ありません. とにかくASP.NETを使用しているため、言語間のジャンプを節約し、ilnumericsの3Dプロットを直接使用できるため、これまでのところうまく機能しています.

于 2012-03-05T17:21:00.343 に答える
0

もう 1 つのオプションは、MATLAB Engineを使用することです。おそらくリアルタイム アプリケーションのオプションではありませんが、それ以外の場合は非常に便利です。基本的に、MATLAB 関数は C++ から直接呼び出します。Figure (プロット) は、ローカル MATLAB を実行しているかのように表示されます。プログラムが起動すると、MATLAB コンソールが作成されます。

于 2011-10-11T22:35:13.670 に答える