codegen
从 MATLAB 代码生成 C/C++ 代码。
语法
说明
codegen
从 MATLAB® 函数生成 C 或 C++ 代码,并编译生成的代码。如果以下任一条件成立,则此语法适用:options
function
函数没有输入参量。
函数包含一个或多个
arguments
块,用于指定所有输入参量的类型和大小。
使用 options
参量指定代码生成配置对象等设置。配置对象控制编译类型(MEX、lib、dll 或 exe)和代码生成参数。有关创建和使用配置对象的信息,请参阅配置编译设置、coder.config
,以及配置对象参考页:coder.CodeConfig
、coder.MexCodeConfig
和 coder.EmbeddedCodeConfig
。
codegen
使用带 options
function
-args {func_inputs
}func_inputs
类型输入的 MATLAB 函数生成 C 或 C++ 代码,并编译生成的代码。使用 options
参量指定代码生成配置对象等设置。配置对象控制编译类型(MEX、lib、dll 或 exe)和代码生成参数。有关创建和使用配置对象的信息,请参阅配置编译设置、coder.config
,以及配置对象参考页:coder.CodeConfig
、coder.MexCodeConfig
和 coder.EmbeddedCodeConfig
。
如果函数没有输入,请省略函数特定的 -args {
选项。func_inputs
}
codegen
从使用在外部 options
files
function
-args {func_inputs
}files
中指定的自定义源代码的 MATLAB 函数生成 C/C++ 代码。有关详细信息,请参阅从生成的代码中调用自定义 C/C++ 代码和Configure Build for External C/C++ Code。
codegen
生成 C/C++ 代码,并控制从 MATLAB 函数生成的 C/C++ 函数代码的输出参量个数。文件和选项参量是可选的。如果并不需要 MATLAB 函数的所有输出,则请使用 options
files
function
-args {func_inputs
} -nargout number_args
-nargout
选项。有关详细信息,请参阅Specify Number of Entry-Point Function Input or Output Arguments to Generate。
codegen
从多个 MATLAB 函数生成 C/C++ 代码。请在每个函数名称的后面分别写入函数的输入参量。还可以对每个函数使用 options
files
function1 -args {func1_inputs} ... functionN -args {funcN_inputs}-nargout
选项。从其中生成代码的函数称为入口函数。有关详细信息,请参阅Generate Code for Multiple Entry-Point Functions。
codegen
生成代码,其生成的代码可接受具有 options
files
function
-args {func_inputs1} ... -args {func_inputsN}-args
指定的多个类型签名的输入参量。对于 MEX 目标,会生成接受所有指定签名的单个 MEX 函数。但是,对于独立目标,会为每个签名生成一个 C/C++ 入口函数。使用 options
参量指定代码生成配置对象和参数等设置。有关详细信息,请参阅Generate Code for Functions with Multiple Signatures。
codegen
从 MATLAB Coder™ 工程文件(例如 project
test.prj
)生成代码。
示例
输入参数
限制
您不能为 MATLAB 脚本生成代码。请将脚本重写为函数来生成代码。
不支持在当前文件夹是私有文件夹或 @ 文件夹时生成代码,因为这些文件夹在 MATLAB 中有特殊含义。您可以生成代码来调用 @ 文件夹中的方法和私有文件夹中的函数。
提示
默认情况下,代码是在文件夹
codegen/
中生成的。MEX 函数和可执行文件被复制到当前工作文件夹。target
/function
为了简化代码生成过程,您可以在单独的脚本中编写代码生成命令。您在该脚本中定义您的函数输入类型和代码生成选项。要生成代码,请调用该脚本。
每次
codegen
为相同的代码或工程生成相同类型的输出时,都会删除上一次编译生成的文件。如果要保留以前的某次编译生成的文件,请在开始新的编译之前将这些文件复制到其他位置。使用
coder
函数打开 MATLAB Coder,并创建一个 MATLAB Coder 工程。该 App 提供了用户界面,便于您添加 MATLAB 文件、定义输入参数和指定编译参数。您可以使用函数语法调用
codegen
。将codegen
参量指定为字符向量或字符串标量。例如:codegen('myfunction','-args',{2 3},'-report')
要提供字符串标量作为输入或将
codegen
参量指定为字符串标量,请使用函数语法。例如:codegen('myfunction','-args',"mystring",'-report') codegen("myfunction","-args","mystring","-report")
向
codegen
的命令形式提供字符串标量输入可能会产生意外的结果。请参阅选择命令语法或函数语法。要以编程方式调用
codegen
,请使用函数语法。例如:A = {'myfunction','-args',{2 3}}; codegen(A{:})
版本历史记录
在 R2011a 中推出
另请参阅
coder
| coder.typeof
| fimath
(Fixed-Point Designer) | numerictype
(Fixed-Point Designer) | mex
| fi
(Fixed-Point Designer) | coder.EnumType
| coder.runTest
| parfor
| coder.FixPtConfig
| coder.config
| packNGo