主要内容

生成代码

生成代码并构建独立的库和可执行文件

代码生成是C/ c++的核心功能MATLAB®编码器™。从应用程序生成代码,您可以与之打开编码器或者通过使用该命令行codegen功能。该应用程序通过代码生成过程提供逐步指导,包括关于最佳实践的指导,以及对许多代码生成设置和选项的清晰可视化辅助设备。命令行工作流实现代码生成的简单,可重复和高效启动。代码生成工作流支持许多不同的数据类型,包括可变数据和全局数万博1manbetx据。工作流还支持多个入口点(顶级)函数,万博1manbetx多功能MEX功能生成和自定义基本属性,例如生成代码的数组布局和数组索引。此外,您还可以生成使用键C ++语言功能(如类,命名空间和功能重载)的代码。

应用程序

全部展开

MATLAB编码器 生成C代码或MEX函数MATLAB代码

功能

全部展开

编码器 开放MATLAB编码器应用程序
codegen 生成C / C ++代码MATLAB代码
coder.target 确定代码生成目标是否指定目标
coder.allowpcode 控制代码生成保护MATLAB文件
coder.config 创建MATLAB编码器代码生成配置对象
coder.extrinsic 将一个函数声明为外部函数并在内部执行它MATLAB
编码器 从mat文件或ASCII文件加载编译时常量到调用者工作区
编码器.NULLCOPY. 在代码生成中声明未初始化的变量
编码器.Newtype. 创建编码器.Type.对象表示输入点函数输入的类型
coder.varsize 声明适应数据
Coder.typeof. 创建编码器.Type.对象,以表示入口点函数输入的类型
coder.resize 调整大小编码器.Type.对象
编码器.CEVAL. 呼叫外部C / C ++函数
coder.cinclude 在生成的代码中包含头文件
Coder.cstructName. 在生成的代码中命名C结构类型
编码器 在生成的代码中声明变量
coder.ref 通过引用表示数据通过
Coder.Rref. 表示通过引用通过的只读数据
coder.wref 指示通过引用传递的仅写数据

对象

全部展开

Coder.mexcodeConfig MEX功能生成的配置参数MATLAB代码
coder.codeConfig C/ c++代码生成的配置参数MATLAB代码
编码器。EmbeddedCodeConfig C/ c++代码生成的配置参数MATLAB代码与嵌入式编码器
Coder.Outputtype. 指定为输入类型的入口点函数的输出类型

主题

生成代码基础

代码生成工作流

从MATLAB代码生成C/ c++代码。

使用MATLAB Coder App生成C代码

使用MATLAB代码生成C / C ++代码MATLAB编码器应用程序。

在命令行生成C代码

使用MATLAB代码生成C / C ++代码codegen命令。

C ++代码生成

理解特定于c++的代码生成注意事项。

建立一个MATLAB编码器项目

建立一个项目在MATLAB编码器应用程序。

切换命令行和项目工作流程

将codegen命令转换为等效MATLAB编码器项目

使用codegen命令-toproject选项。

将MATLAB编码器项目转换为MATLAB脚本

使用项目设置在命令行生成代码。

共享生成配置设置

将项目设置导出到代码生成配置对象或将设置导入项目中。

数据特有的工作流

生成可变大小数据的代码

为其大小在运行时更改的数据代码。

为全局数据生成代码

从使用全局数据的MATLAB代码生成C/ c++代码

为枚举生成代码

从使用枚举的MATLAB代码生成代码。

扩展功能

为多个入口点函数生成代码

为多个入口点函数生成C / C ++代码。

为多个签名生成一个MEX函数

为多个签名生成一个MEX函数。

传递一个入口点函数输出作为输入

简化多个入口点函数的输入类型规范。

生成使用行主数组布局的代码

用连续存储在内存中的行元素生成C/ c++代码。

生成使用n维索索引的代码

在生成的代码中保留数组尺寸。

c++扩展功能

使用类接口生成C ++代码

生成打包到类中的c++代码。

为MATLAB类生成c++类

在MATLAB代码中为值类、句柄类或System对象™生成一个c++类。

在生成的函数接口中使用动态分配的c++数组

理解并使用从生成的c++函数接口动态分配的数组。

将生成的c++代码组织到命名空间中

名称空间将生成的代码组织为逻辑部分,并防止名称冲突。

代码的外观

保留关键字

代码中的某些单词,即C / C ++关键字,可能会在生成的代码中重命名。

特色的例子