删除内部数据零初始化
控制内部工作结构(例如模块状态和模块输出)的初始化代码生成为零
模型配置窗格: 代码生成 / 优化
描述
删除内部数据零初始化参数指定是否将内部工作结构(例如模块状态和模块输出)的初始化代码生成为零。
此参数不适用于映射到使用自定义存储类设计器创建的基于 TLC 的存储类的内部工作结构。
设置
on | off- On
不生成将内部工作结构初始化为零的代码。
在启动期间,符合标准的 C 和 C++ 编译器将全局数据初始化为零,从而无需在生成的代码中包含此数据的零初始化代码。符合标准的编译器不一定将动态分配的数据和局部变量初始化为零。在选择删除内部数据零初始化参数之前,请确认您的模型满足以下条件:
如果您的编译器不符合标准,请确认它将全局数据初始化为零。
如果将代码接口打包设置为可重用函数,请确认数据是静态分配的,或者动态分配的数据已初始化为零。
即使您选择此参数,生成的代码也会初始化您在 Initialize Function模块中指定的数据。
- Off
生成将内部工作结构初始化为零的代码。
生成的代码不会初始化存储类具有导入范围的数据,除非您在 Initialize Function模块中指定该数据。
如果将代码接口打包参数设置为不可重用函数,则默认情况下会选中删除内部数据零初始化复选框,并将 ZeroInternalMemoryAtStartup 设置为 off。
如果将代码接口打包参数设置为可重用函数,则默认情况下,删除内部数据零初始化复选框将被清除,并且 ZeroInternalMemoryAtStartup 将设置为 on。
如果将代码接口打包参数设置为 C++ 类,则删除内部数据零初始化复选框将被选中且无法更改。ZeroInternalMemoryAtStartup 设置为 off。
如果将代码接口打包参数设置为可重用函数并选择使用动态内存分配进行模型初始化参数,则该参数复选框将被清除(ZeroInternalMemoryAtStartup 设置为 on)。
推荐的设置
| 应用情形 | 设置 |
|---|---|
| 调试 | 无影响 |
| 可追溯性 | 无影响 |
| 效率 | On (GUI),off(命令行)、(执行,ROM)、无影响 (RAM) |
| 安全预警 | 无建议 |
编程用法
参数:ZeroInternalMemoryAtStartup |
| 类型:字符向量 |
值:'off'(UI 设置开启)| 'on'(UI 设置关闭) |
默认值:'off' |
版本历史记录
在 R2007a 中推出