2009-10-16 9 views
5

Para llamar al código de MATLAB en C o C++, ¿cómo elegir entre usar el motor MATLAB y usar el compilador MATLAB mcc para crear bibliotecas compartidas C o C++ desde su código MATLAB? ¿Cuáles son sus pros y contras? Para el segundo método, vea http://www.mathworks.com/access/helpdesk/help/toolbox/compiler/f2-9676.htmlMotor MATLAB versus librerías creadas por el compilador MATLAB?

¿Hay otras formas de llamar a MATLAB desde C o C++?

+1

Puede que desee comprobar http://stackoverflow.com/questions/1071778/data-streaming-in-matlab-with-input-data-coming-in-from-ac-executable/1074038#1074038 – Jacob

+0

Gracias pero eso no es lo que quiero No estoy hablando de llamar a C o C++ desde Matlab por mex, sino a compilar el código de matlab en la biblioteca que luego se puede llamar en C o C++. – Tim

+1

No conozco la respuesta completa, pero mire los requisitos de instalación para la ejecución. Invocar el motor MATLAB definitivamente requiere tener MATLAB instalado en la máquina. ¿Eso es válido para cuando solo estás usando bibliotecas compartidas? –

Respuesta

2

Si el cálculo es lineal y largo, usaría mcc para compilar el código. Es como si MATLAB fuera simplemente otra biblioteca con rutinas numéricas para vincular a su programa.

Si quisiera proporcionar interacción con MATLAB en mi programa, donde el usuario podría especificar una gran cantidad de declaraciones que serían imposibles o simplemente tediosas de codificar individualmente, entonces usaría el motor MATLAB. Es como si quisiera ejecutar MATLAB sin la IU de Mathworks.

Nunca me he molestado en abrir el motor MATLAB fuera de una prueba.