Contenido principal

Llamar a MATLAB desde C++

Ejecute código de MATLAB® desde programas de C++, con soporte de programación orientado a objetos y ejecución asincrónica

La API del motor MATLAB para C++ ofrece una interfaz entre el lenguaje de programación de C++ y MATLAB. La API permite que los programas de C++ inicien MATLAB, evalúen funciones de MATLAB con argumentos e intercambien datos con MATLAB. Las operaciones admitidas incluyen:

  • Iniciar MATLAB.

  • Conectarse a una sesión compartida de MATLAB en el equipo local.

  • Llamar a funciones de MATLAB con argumentos de entrada pasados desde C++ y variables de salida devueltas desde MATLAB.

  • Evaluar instrucciones de MATLAB en el área de trabajo básica de MATLAB.

  • Pasar variables desde C++ a MATLAB y desde MATLAB a C++.

Para comenzar, consulte Set Up C++ Development Environment.

Esta API del motor de MATLAB para C++ usa la API de datos de MATLAB para C++, lo que permite a las aplicaciones que se ejecutan fuera de MATLAB trabajar con los datos de MATLAB a través de una interfaz de lenguaje neutral. La API del motor también proporciona una interfaz de tipado fuerte que aplica una asignación de tipo de datos estricta entre MATLAB y C++. Puede utilizar esta interfaz de tipado fuerte para llamar a funciones y clases de MATLAB por sus nombres de MATLAB en C++ como si fueran funciones y clases de C++ nativas. Para ver un ejemplo, consulte Integrate Strongly Typed MATLAB Data in C++ Application.

Clases

expandir todo

matlab::engine::MATLABEngineEvaluate MATLAB functions from C++ program
matlab::engine::FutureResultRetrieve result from asynchronous operation
matlab::engine::SharedFutureResult Retrieve result from asynchronous operation as shared future
matlab::engine::StreamBuffer Define stream buffer
matlab::engine::String Define UTF-16 string
matlab::engine::WorkspaceTypeType of MATLAB workspace

Funciones

expandir todo

matlab::engine::startMATLABStart MATLAB synchronously
matlab::engine::startMATLABAsyncStart MATLAB asynchronously
matlab::engine::connectMATLABConnect to shared MATLAB session synchronously
matlab::engine::connectMATLABAsyncConnect to shared MATLAB session asynchronously
matlab::engine::findMATLABFind shared MATLAB sessions synchronously
matlab::engine::findMATLABAsyncFind shared MATLAB sessions asynchronously
matlab::engine::terminateEngineClientFree engine resources during run time
matlab::engine::convertUTF8StringToUTF16StringConvert UTF-8 string to UTF-16 string
matlab::engine::convertUTF16StringToUTF8StringConvert UTF-16 string to UTF-8 string
matlab.engine.shareEngineConvert running MATLAB session to shared session
matlab.engine.engineNameReturn name of shared MATLAB session
matlab.engine.isEngineSharedDetermine if MATLAB session is shared
matlab.engine.typedinterface.generateCPPGenerate C++ code interface for MATLAB namespaces, classes, and functions (Desde R2022a)
mexBuild MEX functions and engine or MAT file applications

Temas

Requisitos

Integrar código de MATLAB en C++

Iniciar MATLAB y conectarse a la plataforma

Llamar a funciones de MATLAB

Utilizar tipos de datos de MATLAB en C++

Información relacionada

Ejemplos destacados