主要内容

从 C++ 调用 MATLAB

从支持面向对象的编程和异步执行的 C++ 程序运行 MATLAB® 代码

MATLAB Engine API for C++ 提供 C++ 编程语言与 MATLAB 之间的接口。此 API 使 C++ 程序能够启动 MATLAB、计算带参量的 MATLAB 函数,并在 MATLAB 和 C++ 程序之间交换数据。支持的操作包括:

  • 启动 MATLAB。

  • 连接到本地计算机上的 MATLAB 共享会话。

  • 使用从 C++ 传递的输入参量和从 MATLAB 函数返回的输出变量调用 MATLAB。

  • 对 MATLAB 基础工作区中的 MATLAB 语句进行求值。

  • 将变量从 C++ 传递给 MATLAB 和从 MATLAB 传递给 C++。

要快速入门,请参阅Set Up C++ Development Environment

MATLAB Engine API for C++ 使用 MATLAB Data API for C++,这样,在 MATLAB 外部运行的应用程序可通过独立于语言的接口处理 MATLAB 数据。Engine API 还提供强定型接口,该接口在 MATLAB 和 C++ 之间强制执行严格的数据类型映射。您可以使用此强定型接口在 C++ 中通过其 MATLAB 名称调用 MATLAB 函数和类,就像它们是原生 C++ 函数和类一样。有关示例,请参阅Integrate Strongly Typed MATLAB Data in C++ Application

全部展开

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

函数

全部展开

matlab::engine::startMATLAB同步启动 MATLAB
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.shareEngine将正在运行的 MATLAB 会话转换为共享会话
matlab.engine.engineName返回共享 MATLAB 会话的名称
matlab.engine.isEngineShared确定 MATLAB 会话是否共享
matlab.engine.typedinterface.generateCPPGenerate C++ code interface for MATLAB namespaces, classes, and functions (自 R2022a 起)
mex编译 MEX 函数和引擎或 MAT 文件应用程序

主题

要求

在 C++ 中集成 MATLAB 代码

启动和连接到 MATLAB

调用 MATLAB 函数

在 C++ 中使用 MATLAB 数据类型

精选示例