codegen
从 MATLAB 代码生成 C/C++ 代码。
语法
说明
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
从 MATLAB 函数生成多签名 MEX 函数。为同一个入口函数的输入参数提供多个 options
files
function
-args {func_inputs1} ... -args {func_inputsN}-args
设定。使用 options
参数指定代码生成配置对象和参数等设置。您必须将编译类型指定为 MEX 函数。不支持其他编译类型(lib
、dll
和 exe
)。有关详细信息,请参阅Generate One MEX Function for 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