禁用对整数溢出或金宝app非限制的支持
代码生成器为这些情况生成支持代码:金宝app
整数操作的结果不在数据类型可以表示的范围内,称为整数溢出。
操作生成非限值值(
inf
和南
)。
如果您知道这些情况不会发生,以减少生成代码的大小并提高其速度,则可以抑制支持代码的生成。金宝app但是,如果您抑制了支持代码的生成和这些情况之一,则生成代码的行为可能与原始MATLAB金宝app的行为不符®代码。
禁用对整数溢出的金宝app支持
默认情况下,代码生成器会生成用于处理整数溢出的代码。溢出到数据类型可以代表的最小值或最大值。如果您知道您的代码不取决于整数溢出支持,以提高性能,则可以禁用处理整数溢出的代码的生成。金宝app禁用整数溢出支持:金宝app
在MEX或独立代码的代码生成配置对象(静态库,动态链接的库或可执行程序)中,设置
饱和元素
财产为错误的
。在里面MATLAB CODER™应用,设置整数溢出饱和到
不
。
笔记
除非您知道您的代码不取决于它,金宝app否则请勿禁用对整数溢出的支持。如果启用了支持和运行时检查,则生成的代金宝app码会产生整数溢出的错误。如果您禁用整数溢出支持并禁用运行时检查,则整数溢出的行为是未定义金宝app的。大多数C编译器都包裹在溢出上。
检查您的代码是否取决于整数溢出支持:金宝app
禁用整数溢出支持。金宝app
启用检查可以在运行时检测整数溢出。
对于MEX,启用完整性检查。看控制运行时检查。
对于独立代码(静态库,动态链接的库或可执行程序),启用运行时间检查。看生成独立的C/C ++代码,该代码检测和报告运行时错误。
在全部输入值范围内运行生成的代码。如果生成的代码检测到整数溢出,则会产生错误。
禁用对无限数字的金宝app支持
默认情况下,对于独立代码(静态库,动态链接的库或可执行程序),代码生成器会生成代码来处理无限数字(inf
和南
)。如果您知道您的代码不取决于非数字数字支持,以提高生成的代码的性能,则可以禁用支持。金宝app禁用无限支持:金宝app
在代码生成配置对象中,设置
金宝app支持nonfinite
财产为错误的
。在里面MATLAB编码器应用,设置金宝app支持无限数字到
不
。
如果您禁用非限时支持,请测试生成的代码表现为预期。金宝app