用于生成MEX函数的配置参数MATLAB代码
一个编码器。MexCodeConfig
对象包含配置参数Codegen.
使用MEX函数时使用。将物体传递给Codegen.
函数的配置
选项。
cfg = coder.config('mex')
创建一个编码器。MexCodeConfig
对象。
cfg = coder.config
创建一个编码器。MexCodeConfig
对象。
CodeFormattingTool
- - - - - -生成代码的格式化工具“汽车”
(默认)|“Clang-format”
|'mathworks'
生成代码的代码格式化选项,指定为表中的值之一。
价值 | 描述 |
---|---|
“Clang-format” |
代码生成器根据A的生成代码格式化 |
“汽车” |
使用内部试探法确定生成的代码是否按 确定生成的代码是否按 |
'mathworks' |
使代码生成器恢复到MathWorks格式工具。 |
CompileTimeRecursionLimit
- - - - - -用于编译时递归的函数专门化的最大数目编译时间递归的最大函数专业数,指定为正整数。禁止在Matlab中递归®代码,集CompileTimeRecursionLimit
为0。对于大多数需要这种递归的递归函数来说,默认的编译时递归限制是足够大的。如果由于编译时递归限制而导致代码生成失败,而您想要编译时递归,请尝试增加限制。或者,更改MATLAB代码,使代码生成器使用运行时递归。看到已达到编译时递归极限.
ConstantFoldingTimeout
- - - - - -常量文件夹执行的最大指令数常量文件夹执行的最大指令数。在某些情况下,代码生成需要特定的指令保持不变。如果常量折叠在这些指令常量折叠之前停止,则代码生成失败。在这种情况下,增加的价值ConstantFoldingTimeout
.
Constantinputs.
- - - - - -恒定输入校验方式“CheckValues”
(默认)|“IgnoreValues”
|'消除'
常量输入检查模式,指定为该表中的值之一。
价值 | 描述 |
---|---|
“CheckValues” |
此值是默认值。 当您调用MEX函数时,它会检查您为常量输入参数提供的值是代码生成时间指定的值。 可以使用相同的参数调用MEX函数和原始MATLAB函数。因此,您可以对这两个函数使用相同的测试文件。 检查值可以减慢执行MEX函数的执行。 |
“IgnoreValues” |
当调用MEX函数时,它会忽略为常量输入参数提供的值。它使用代码生成时指定的值。 您可以使用相同的测试文件而无需检查常量参数值的开销。 |
'消除' |
代码生成器从MEX函数签名中删除常量输入参数。当您调用MEX函数时,您没有为常量输入参数提供值。 此选项提供向后兼容性。 |
看到常量输入检查MEX函数.
CppPackagesToNamespaces
- - - - - -为MATLAB包生成c++命名空间真正的
(默认)|错误的
是否为MATLAB代码中的包生成c++名称空间,指定为该表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 代码生成器为MATLAB代码中的包生成c++名称空间。看到将生成的C ++代码组织到命名空间中. |
错误的 |
代码生成器不会为MATLAB代码中的包生成c++名称空间。 |
依赖性:
设置targetlang.
到“c++”
启用此参数。
数据类型:逻辑
CppNamespace
- - - - - -生成的C ++代码的命名空间名称''
(默认)|特征向量cppnamespaceformathworkscode.
- - - - - -将为MathWorks代码生成的c++代码放在单独的名称空间中“编码器”
(默认)|特征向量为Mathworks代码生成的C ++代码的命名空间。如果将此属性指定为空字符向量,则代码生成器不会生成此类命名空间。
依赖性:
设置targetlang.
到“c++”
启用此参数。
数据类型:字符
CPPPRESERVEClasses.
- - - - - -为MATLAB类生成c++类真正的
(默认)|错误的是否为MATLAB类生成c++类或C风格结构,指定为该表中的一个值。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 代码生成器为Matlab类生成C ++类。看到为MATLAB类生成c++类. |
错误的 |
代码生成器为MATLAB类生成C样式结构。 |
依赖性:
设置targetlang.
到“c++”
启用此参数。
数据类型:逻辑
CustomHeaderCode
- - - - - -出现在生成的C/ c++头文件顶部的自定义代码除了从MATLAB代码生成的每个C / C ++头文件附近的自定义代码,除了RTWTYPES.H.
和RTWHALF.H.
,指定为字符向量。
CustomInclude
- - - - - -包括要添加到包含路径的文件夹,用于编译生成的代码在编译生成的代码时,包含要添加到Include路径的文件夹。指定包含文件夹的包含文件夹列表,字符阵列,字符向量或字符向量。
多个文件夹名,指定为该表中的一个值。
价值 | 描述 |
---|---|
字符串数组 | 字符串数组 |
字符向量的单元格数组 | 字符向量的细胞阵列 |
字符向量 | 用a分隔包含文件夹 请注意 在以后的版本中,将不再使用字符向量在代码配置对象中指定多个条目。请使用字符向量的字符串数组和单元格数组。有关更多信息,请参阅兼容性考虑因素. |
CustomInitializer
- - - - - -要包含在生成的初始化函数中的自定义代码自定义代码包含在生成的初始化函数中,指定为字符向量。
CustomLibrary
- - - - - -与生成的代码链接的静态库文件要与生成的代码链接的静态库文件,指定为字符串数组、单元格数组的字符向量或字符向量。
多个静态库文件名,指定为此表中的值之一。
价值 | 描述 |
---|---|
字符串数组 | 字符串数组 |
字符向量的单元格数组 | 字符向量的细胞阵列 |
字符向量 | 单独的静态库文件名 请注意 在以后的版本中,将不再使用字符向量在代码配置对象中指定多个条目。请使用字符向量的字符串数组和单元格数组。有关更多信息,请参阅兼容性考虑因素. |
CustomSource
- - - - - -源文件要编译和链接生成的代码源文件要编译和链接与生成的代码,指定为字符串数组,字符向量或字符向量。
构建过程首先在当前文件夹中搜索源文件,然后在您指定的包含文件夹中搜索CustomInclude
.如果具有相同名称的源文件出现在搜索路径的多个文件夹中,则构建过程可能使用与您指定的文件不同的文件。
假设你指定foo.cpp
作为源文件。如果Foo.c.
和foo.cpp
都在搜索路径上,您不能确定构建过程是否使用Foo.c.
或foo.cpp
.
多个源文件名,指定为该表中的一个值。
价值 | 描述 |
---|---|
字符串数组 | 字符串数组 |
字符向量的单元格数组 | 字符向量的细胞阵列 |
字符向量 | 将源文件名用 请注意 在以后的版本中,将不再使用字符向量在代码配置对象中指定多个条目。请使用字符向量的字符串数组和单元格数组。有关更多信息,请参阅兼容性考虑因素. |
CustomSourceCode
- - - - - -代码显示在生成的顶部附近.c
或.cpp.
文件指定代码显示在生成的每个代码的顶部附近.c
或.cpp.
文件(除了RTWHALF.C.
或RTWHALF.CPP.
),在任何函数之外。将代码指定为字符向量。
请勿指定C静态函数定义。
CustomterMinator.
- - - - - -出现在生成的terminate函数中的代码在生成的终止功能中显示的代码,指定为字符向量。
DeepLearningConfig
- - - - - -用于深度学习代码生成的配置对象编码器。MklDNNConfig
对象用于深度学习网络代码生成的配置对象,指定为编码器。MklDNNConfig
对象。
一个编码器。MklDNNConfig
对象包含特定于使用Intel进行深度学习的c++代码生成的参数®MKL-DNN。创建一个编码器。MklDNNConfig
对象,使用编码器。DeepLearningConfig
.例如:
cfg = coder.config('mex');cfg。TargetLang =“c++”;cfg。DeepLearningConfig =编码器。DeepLearningConfig (“mkldnn”);
深度学习网络的代码生成需要deep learning Toolbox™和Matlab Coder™接口,用于深度学习库金宝app支持包。
请注意
使用ARM进行深度学习不支持MEX代码生成金宝app®计算库。
依赖:如果DeepLearningConfig
是集,Codegen.
集targetlang.
到C ++
.
DynamicMemoryAllocation
- - - - - -动态内存分配方式'临界点'
(默认)|'AllvariablesizeAray'
|“关闭”
动态内存分配模式,指定为此表中的值之一。
价值 | 描述 |
---|---|
'临界点' |
此值是默认值。 代码生成器在堆上为大小(以字节为单位)大于或等于的可变大小数组动态分配内存 |
'AllvariablesizeAray' |
代码生成器动态分配堆上所有可变大小阵列的内存。 |
“关闭” |
代码生成器静态分配堆栈上可变大小阵列的内存。 |
无界可变大小数组需要动态内存分配。
依赖性:
EnableVariableSizing
启用此参数。
设置这个DynamicMemoryAllocation
到'临界点'
使DynamicMemoryAllocationThreshold
参数。
看到生成可变大小数据的代码.
dynamicmemoryallocationInterface.
- - - - - -在生成的函数接口处动态分配数组“汽车”
(默认)|'C'
|“c++”
在生成的C / C ++函数的接口处实现动态分配的数组,指定为此表中的值之一。
价值 | 描述 |
---|---|
“汽车” |
这是默认值。如果你设置了 |
'C' |
生成的代码使用C样式 |
“c++” |
如果你设置了 生成的代码使用 |
依赖性:
EnableVariableSizing
启用此参数。
DynamicMemoryAllocationThreshold
- - - - - -可变大小数组的动态内存分配的大小阈值65536
(默认)|正整数可变大小数组的动态内存分配的大小阈值,指定为正整数。代码生成器对大小(以字节为单位)大于或等于阈值的可变大小数组使用动态内存分配。
依赖性:
设置DynamicMemoryAllocation
到'临界点'
启用此参数。
看到生成可变大小数据的代码.
EnableAutoParallelization
- - - - - -自动并行化为了
循环错误的
(默认)|真正的
自动并行化为了
循环,指定为此表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器不会自动并行化 |
真正的 |
代码生成器自动并行化 |
数据类型:逻辑
EchoExpressions
- - - - - -表达呼应真正的
(默认)|错误的
表达式返回,指定为该表中的一个值。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 MEX函数显示不以分号结束的语句的输出。 |
错误的 |
MEX函数不显示不以分号结尾的语句的输出。 |
此属性不适用于常见的可视化功能,例如disp
,阴谋
,或数字
当它们被称为外在功能时。MEX功能显示这些功能的输出,无论是否存在分号或值EchoExpressions
.
EnableAutoExtrinsiccalls.
- - - - - -自动外部函数调用真正的
(默认)|错误的
自动外部函数调用,指定为此表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 代码生成器将一些常见的可视化功能视为外部函数。您不必通过使用将这些功能声明为外在 |
错误的 |
代码生成器不会将常见可视化函数视为外部函数,除非您通过使用声明它们为外部函数编码器.Extrinsic. . |
一些常见的可视化函数是阴谋
,disp
, 和数字
.看到使用MATLAB引擎在生成的代码中执行函数调用.
Enabledebugging.
- - - - - -C编译器调试模式错误的
(默认)|真正的
C编译器调试模式,指定为该表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器不启用C编译器调试模式。 |
真正的 |
代码生成器启用C编译器调试模式。当启用调试模式时,C编译器不会优化代码。编译更快,但执行更慢。 |
EnableJIT
- - - - - -即时(JIT)编译模式错误的
(默认)|真正的
即时(JIT)编译模式,指定为此表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器通过生成和编译C / C ++代码创建C / C ++ MEX功能。 |
真正的 |
代码生成器使用即时(JIT)编译技术来生成MEX函数。代码生成器创建一个JIT MEX函数,该函数包含MATLAB代码的抽象表示。当您运行JIT MEX函数时,MATLAB会在内存中生成可执行代码。 |
为了加快MEX函数的生成,设置EnableJIT
到真正的
.
JIT编译与某些代码生成特性和选项不兼容,比如自定义代码或OpenMP库的使用。如果指定JIT编译,而代码生成器无法使用它,它将生成一个带有警告的C/ c++ MEX函数。如果EnableJIT
和EnableOpenMP
是真正的
,以及您的代码使用parfor
,代码生成器使用JIT汇编并处理parfor
循环,为了
- 砍伐。
EnableMemcpy.
- - - - - -memcpy
优化真正的
(默认)|错误的
memcpy
优化,指定为此表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 如果可能,代码生成器使用 |
错误的 |
代码生成器不使用 |
EnableMexProfiming.
- - - - - -为分析仪器错误的
(默认)|真正的
启用生成的MEX函数的分析,指定为该表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器没有在生成的MEX函数中包含分析工具。 |
真正的 |
代码生成器包括生成的MEX功能中的分析仪器。然后,您可以使用Matlab Profiler配置MEX。看到利用MATLAB Profiler分析MEX函数. |
EnableOpenMP
- - - - - -并行化的parfor
- 酥油真正的
(默认)|错误的
并行化的parfor
-loops,指定为该表中的一个值。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 如果可能,代码生成器使用OpenMP库生成并行运行的循环迭代。 |
错误的 |
代码生成器处理 |
看到parfor
.
OpenMP库的使用与即时(JIT)编译不兼容。如果EnableJIT
和EnableOpenMP
是真正的
,代码生成器使用JIT编译和处理parfor
循环,为了
- 砍伐。
EnableRuntimeRecursion
- - - - - -运行时支持递归金宝app真正的
(默认)|错误的
运行时递归支持,指定为此表中的值之一。金宝app
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 在生成的代码中允许使用递归函数。 |
错误的 |
生成的代码中不允许递归函数。 |
一些编码标准,例如Misra®,不允许递归。增加生成符合MISRA C的代码的可能性®,设置EnableRuntimeRecursion
到错误的
.
如果你的MATLAB代码需要运行时递归和EnableRuntimeRecursion
是错误的
,代码生成失败。
看到递归函数的代码生成.
EnableVariableSizing
- - - - - -可变大小的阵列支持金宝app真正的
(默认)|错误的
支持可变大小数组,指定为该表中的值之一。金宝app
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 允许使用可变大小的数组生成代码。 |
错误的 |
不允许使用可变大小的数组生成代码。 |
依赖性:
使动态内存分配
.
看到可变大小数组的代码生成.
ExtrinsicCalls
- - - - - -外部函数调用支持金宝app真正的
(默认)|错误的
外部函数调用支持,指定为该表中的值之一。金宝app
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 对于一个外部函数,代码生成器产生对MATLAB函数的调用。代码生成器不生成函数的内部代码。 |
错误的 |
代码生成器忽略外部函数。它不会生成对MATLAB函数的调用的代码。如果外部函数影响MATLAB函数的输出,则代码生成器发出编译错误。 如果你设置 |
的价值ExtrinsicCalls
影响MEX功能如何为RAND生成随机数,
兰迪
, 和兰德
.如果ExtrinsicCalls
是真正的
, MEX函数使用MATLAB全局随机数流生成随机数。否则,MEX函数使用一个自包含的随机数生成器。
FilePartitionMethod
- - - - - -文件分区模式'mapmfiletocfile'
(默认)|“SingleFile”
指定为该表中的值之一的文件分区模式。
价值 | 描述 |
---|---|
'mapmfiletocfile' |
此值是默认值。 代码生成器为每个MATLAB语言文件生成单独的C/ c++文件。 |
“SingleFile” |
代码生成器为映射到MATLAB入口点函数的C/ c++函数生成一个文件。代码生成器为实用函数生成单独的C/ c++文件。 |
GenCodeOnly
- - - - - -只生成源代码错误的
(默认)|真正的
仅生成源代码,指定为该表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器生成C / C ++源代码并构建对象代码。 |
真正的 |
代码生成器生成C / C ++源代码,但不会调用Make命令或构建对象代码。当您迭代修改MATLAB代码并生成C / C ++代码时,仅生成代码可以节省时间。 |
generateComments.
- - - - - -生成代码中的注释真正的
(默认)|错误的
生成代码中的注释,指定为该表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 代码生成器在生成的代码中放置注释。 |
错误的 |
代码生成器不会在生成的代码中放置注释。 |
GenerateReport.
- - - - - -代码生成报告错误的
(默认)|真正的代码生成报告,指定为此表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器仅在出现错误或警告消息或设置 |
真正的 |
代码生成器生成代码生成报告。 |
globaldatasyncmethod.
- - - - - -全局数据同步方式“SyncAlways”
(默认)|'syncattryandexits'
|“NoSync”
全局数据同步模式,指定为该表中的值之一。
价值 | 全球数据描述 | 常量全局数据的描述 |
---|---|---|
|
此值是默认值。 在MEX函数条目和退出处同步全局数据,并用于外部呼叫,以实现MATLAB和生成的MEX功能之间的最大一致性。为了最大化性能,如果外在调用不更改全局数据,请使用此选项 |
在MEX函数入口和外部调用之后验证常量全局数据的一致性。如果MATLAB全局工作空间中的全局数据值与MEX函数中的编译时常量全局值不一致,则MEX函数以一个错误结束。使用 |
|
仅在MEX函数入口和退出时同步全局数据。为了最大化性能,如果只有少数外部调用更改全局数据,则使用此选项 |
仅在MEX函数入口验证常量全局数据。如果MATLAB全局工作空间中的全局数据值与MEX函数中的编译时常量全局值不一致,则MEX函数以一个错误结束。使用 |
|
禁用同步。在禁用同步之前,请验证MEX功能是否不与MATLAB全局数据交互。否则,可以发生MATLAB和MEX功能之间的不一致。 |
禁用一致性检查。 |
看到为全局数据生成代码.
HighlightPotentialRowMajorIssues
- - - - - -潜在的行主布局问题真正的
(默认)|错误的
显示潜在的行主布局效率问题,指定为该表中的值之一。
价值 | 描述 |
---|---|
真正的 |
代码生成报告由于行主要布局而显示潜在的效率问题。(此值为默认值。) |
错误的 |
代码生成报告不会显示与数组布局相关的问题。 |
看到行主要数组布局的代码设计.
InitFltsAndDblsToZero
- - - - - -用MEMSET分配浮子和双零真正的
(默认)|错误的
分配浮子和双零memset
,指定为该表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 如果可能,代码生成器使用 |
错误的 |
代码生成器不使用 |
InlineBetweenMathWorksFunctions
- - - - - -MathWorks函数之间的控件内联'速度'
(默认)|'总是'
|“可读性”
|“永远”
在MathWorks调用另一个MathWorks函数(指定为该表中的值之一)的所有调用站点上的内联行为。
价值 | 描述 |
---|---|
'速度' |
此值是默认值。 使用内部试探法确定是否在调用站点执行内联。这种设置通常会导致高度优化的代码。 |
'总是' |
始终在呼叫站点执行内联。 |
“可读性” |
几乎从不内联函数调用,除非调用非常小的函数。尽可能保持代码的模块化,而不牺牲太多的速度。结果是高可读性的代码。 |
“永远” |
永远不要内联函数调用。导致最大的可读性。此设置可能会显著降低生成代码的性能。 |
即使你选择了'总是'
或者是“永远”
选项,在某些情况下,代码生成器可能不会严格遵循该指令。例如,如果有冲突,则coder.inline(总是)
或编码器.inline('从不')
放置在功能身体内的指令覆盖此选项。有关更多信息,请参阅不同内联控制之间的互动.
InlineBetweenUserandMathworksfunctions.
- - - - - -控制在用户写入功能和MATHWORKS功能之间的内联'速度'
(默认)|'总是'
|“可读性”
|“永远”
在所有呼叫网站上的内联行为,其中写入MathWorks函数的函数,或MathWorks函数调用您写入的函数。指定为此表中的值之一。
价值 | 描述 |
---|---|
'速度' |
此值是默认值。 使用内部试探法确定是否在调用站点执行内联。这种设置通常会导致高度优化的代码。 |
'总是' |
始终在呼叫站点执行内联。 |
“可读性” |
几乎从不内联函数调用,除非调用非常小的函数。尽可能保持代码的模块化,而不牺牲太多的速度。结果是高可读性的代码。 |
“永远” |
永远不要内联函数调用。导致最大的可读性。此设置可能会显著降低生成代码的性能。 |
即使你选择了'总是'
或者是“永远”
选项,在某些情况下,代码生成器可能不会严格遵循该指令。例如,如果有冲突,则coder.inline(总是)
或编码器.inline('从不')
放置在功能身体内的指令覆盖此选项。有关更多信息,请参阅不同内联控制之间的互动.
InlineBetweenUserFunctions
- - - - - -控制用户写入功能之间的内联'速度'
(默认)|'总是'
|“可读性”
|“永远”
在所有呼叫网站上的内联行为,您写的函数调用您写入的另一个函数,指定为此表中的值之一。
价值 | 描述 |
---|---|
'速度' |
此值是默认值。 使用内部试探法确定是否在调用站点执行内联。这种设置通常会导致高度优化的代码。 |
'总是' |
始终在呼叫站点执行内联。 |
“可读性” |
几乎从不内联函数调用,除非调用非常小的函数。尽可能保持代码的模块化,而不牺牲太多的速度。结果是高可读性的代码。 |
“永远” |
永远不要内联函数调用。导致最大的可读性。此设置可能会显著降低生成代码的性能。 |
即使你选择了'总是'
或者是“永远”
选项,在某些情况下,代码生成器可能不会严格遵循该指令。例如,如果有冲突,则coder.inline(总是)
或编码器.inline('从不')
放置在功能身体内的指令覆盖此选项。有关更多信息,请参阅不同内联控制之间的互动.
IntegityChecks.
- - - - - -内存完整性检查真正的
(默认)|错误的内存完整性检查,指定为此表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 生成的代码检测到内存完整性违规,并使用诊断消息停止执行。 |
错误的 |
生成的代码不会检测到内存完整性违规。 设置 |
看到控制运行时间检查.
LaunchReport
- - - - - -自动打开代码生成报告错误的
(默认)|真正的自动打开代码生成报告,指定为本表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 如果出现错误或警告,或者 |
真正的 |
代码生成器生成并打开代码生成报告。 |
Matlabsourcecomment.
- - - - - -将MATLAB源代码列为生成的代码中的注释错误的
(默认)|真正的
将MATLAB源代码作为注释包含在生成的代码中,指定为表中的值之一。
价值 | 描述 |
---|---|
错误的 |
此值是默认值。 代码生成器不会将MATLAB源代码插入生成的代码中的注释。代码生成器不包括功能横幅中的MATLAB函数签名。 |
真正的 |
代码生成器将MATLAB源代码插入生成的代码中的注释。可追溯性标签紧接在源代码的每一行之前。该跟踪性标签可帮助您找到相应的MATLAB源代码。看到跟踪生成的C / C ++代码到MATLAB源代码. 代码生成器还在函数横幅中包含MATLAB函数签名。 |
依赖性:
generateComments.
启用此参数。
名称
- - - - - -对象名称“MexCodeConfig”
(默认)|特征向量对象名称,指定为字符向量。
PostCodeGenCommand
- - - - - -命令自定义构建处理''
(默认)|特征向量命令以在MEX功能生成后自定义构建处理Codegen.
,指定为字符向量。
看到构建流程定制.
PreserveArrayDimensions
- - - - - -n维索引错误的
(默认)|真正的
preservevariamblenames.
- - - - - -变量名称以保存生成的代码“没有”
(默认)|“用户名”
|'全部'
要保留在生成的代码中的变量名,指定为该表中的值之一。
价值 | 描述 |
---|---|
“没有” |
此值是默认值。 代码生成器不需要保留任何变量名。它可以重用任何满足变量重用要求的变量。 如果您的代码使用大型结构或数组,则设置 |
“用户名” |
代码生成器保留与与您在MATLAB代码中定义的变量对应的名称。它不会用另一个名称替换您的变量名称,不将您的名称用于另一个变量。提高可读性,设置 设置 |
'全部' |
保留所有变量名称。此参数值禁用变量重用。仅用于测试或调试,而不是生产代码。 |
看到在生成的代码中保留变量名.
exportinfovarname.
- - - - - -包含代码生成报告信息的变量的名称''
(默认)|特征向量将有关代码生成的信息导出到其上的变量的名称,指定为字符向量。代码生成器在基本的MATLAB工作空间中创建这个变量。此变量包含有关代码生成设置、输入文件、生成文件和代码生成消息的信息。
eportPotientialDifferences.
- - - - - -潜在的差异报告真正的
(默认)|错误的
电位差报告,指定为表中值之一:
价值 | 描述 |
---|---|
真正的 |
代码生成器在生成的代码和MATLAB代码之间报告潜在的行为差异。在代码生成报告的选项卡上列出了潜在差异。潜在差异是在某些条件下在运行时发生的差异。 |
错误的 |
代码生成器未报告潜在的差异。 |
看到潜在的差异报告.
ReservedNameArray
- - - - - -代码生成器不能用于函数或变量的名称''
(默认)|字符串数组|字符向量的单元格数组|特征向量代码生成器不能对函数或变量使用的名称列表,指定为字符串数组、字符向量的单元格数组或字符向量。
多个保留名称,指定为此表中的值之一。
价值 | 描述 |
---|---|
字符串阵列 | 字符串数组 |
字符向量的单元格数组 | 字符向量的细胞阵列 |
特征向量 | 中以分号分隔的保留名称列表 请注意 在以后的版本中,将不再使用字符向量在代码配置对象中指定多个条目。请使用字符向量的字符串数组和单元格数组。有关更多信息,请参阅兼容性考虑因素. |
ResponsivenessChecks
- - - - - -响应性检查真正的
(默认)|错误的
响应性检查,指定为此表中的值之一。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 您可以使用Ctrl + C停止生成的MEX函数的执行。 |
错误的 |
要结束一个长时间运行的MEX函数,您可能必须终止MATLAB。 |
看到控制运行时间检查.
rowmajor.
- - - - - -行存储阵列布局错误的
(默认)|真正的
生成使用行 - 主要数组布局的代码,指定为此表中的值之一。
价值 | 描述 |
---|---|
错误的 |
生成使用列主数组布局的代码。(此值为默认值。) |
真正的 |
生成使用行主要数组布局的代码。 |
SaturateOnIntegerOverflow
- - - - - -整数溢出支持金宝app真正的
(默认)|错误的
整数溢出支持,指定为此表中的值之一金宝app。
价值 | 描述 |
---|---|
真正的 |
此值是默认值。 代码生成器生成处理整数溢出的代码。溢出会饱和到数据类型所能表示的最小值或最大值。 |
错误的 |
代码生成器不生成代码以处理整数溢出。没有设置 |
此参数仅适用于MATLAB内置整数类型。它不适用于双精度、单精度或定点数据类型。
StackUsageMax
- - - - - -每个应用程序的最大堆栈使用量200000
(默认)|正整数每个应用程序的最大堆栈用法(以字节为单位)指定为正整数。设置低于可用堆栈大小的限制。否则,可能会发生运行时堆栈溢出。C编译器检测并报告堆栈溢出。
看到控制栈空间使用情况.
targetlang.
- - - - - -生成代码中使用的语言'C'
(默认)|“c++”
生成代码中使用的语言,指定为'C'
或“c++”
.如果指定C ++,则代码生成器将C代码包裹到.cpp文件中,以便您可以使用C ++编译器和与外部C ++应用程序的接口。它不会生成C ++类。
依赖:如果DeepLearningConfig
是集,Codegen.
集targetlang.
到C ++
.
冗长
- - - - - -代码生成进度显示“信息”
(默认)|“沉默”
|“详细”
是否在MATLAB命令行显示代码生成进度的状态,指定为该表中的值之一。
价值 | 描述 |
---|---|
“沉默” |
如果代码生成成功而没有警告,所有消息都会被抑制,包括生成报告时。 显示警告和错误消息。 |
“信息” |
此值是默认值。 相比
|
“详细” |
除了显示的消息 |
写一个可以从中生成代码的MATLAB函数。此示例使用该功能迈达德
返回其输入的总和。
功能myadd(a,b) = myadd(a,b);结尾
为MEX功能生成创建配置对象。
cfg = coder.config('mex');
更改不希望使用默认值的属性值。例如,启用即时(JIT)编译。
cfg。EnableJIT = true;
通过使用生成代码Codegen.
.将配置对象传递给Codegen.
通过使用配置
选项。指定输入参数是标量级的。
Codegen.迈达德配置cfgarg游戏{1 1}报告
要使用MEX功能生成的默认配置参数值,而不是创建配置对象,可以调用Codegen.
不指定配置对象或使用配置:墨西哥人
选项。
未来版本中的行为改变
在将来的未来版本中,使用具有分隔符的字符向量或字符串标量指定代码配置对象中的多个文件名,路径或保留名称。使用字符串数组和字符向量的单元格数组。例如,要包含多个文件夹名称,可以使用字符串数组CustomInclude
作为cfg。CustomInclude = ["C:\项目","C:\自定义文件"];
或者是字符向量的单元格阵列cfg。CustomInclude = {'C:\项目','C:\自定义文件'};
以包含编译生成代码的路径。
您单击了与此MATLAB命令对应的链接:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。