主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

coder.setupMISRAConfig

配置参数以提高生成的代码对 MISRA 和 AUTOSAR 规范的合规性

说明

coder.setupMISRAConfig(cfg) 设置了一个 Embedded Coder® 代码生成配置对象,并选择了属性来提高生成的代码对 MISRA™ C:2012、MISRA C:2023、MISRA C++:2008 和 AUTOSAR C++14 规范的遵守程度。

示例

示例

全部折叠

创建一个 Embedded Coder 代码生成配置对象。

cfg = coder.config('lib', 'ecoder', true);

设置可能影响 MISRA 和 AUTOSAR 合规性的属性。

coder.setupMISRAConfig(cfg);

函数 coder.setupMISRAConfig 根据表中显示的值设置属性值。

属性提高 MISRA 合规性的值
CastingMode'Standards'
CppGenerateEnumClass(如果目标语言是 C++)true
CppInterfaceClassName(如果目标语言是 C++)''
CppInterfaceStyle(如果目标语言是 C++)'Functions'
CppNamespace(如果目标语言是 C++)

C++ 的有效命名空间名称

DataTypeReplacement'CoderTypedefs'
EnableDynamicMemoryAllocationfalse
EnableOpenMPfalse
EnableRuntimeRecursionfalse
EnableSignedLeftShiftsfalse
EnableSignedRightShiftsfalse
GenerateDefaultInSwitchtrue
HeaderGuardStyle'UseIncludeGuard'
JustifyMISRAViolationstrue
LargeConstantGeneration'KeepInSourceFiles'
MaxIdLength(如果目标语言是 C)31
ParenthesesLevel'Maximum'
RuntimeChecksfalse
TargetLangStandard 'C99 (ISO)' 表示 C,'C++11 (ISO)' 表示 C++

注意

必须将 GenerateComments 设置为 true 才能使用 JustifyMISRAViolations 添加 MISRA 和 AUTOSAR 注解。

如果未设置 CppNamespace 属性,并且 TargetLang 属性为 'C++',则 coder.setupMISRAConfig 会将 CppNamespace 属性设置为默认字符向量 'Codegen'。将此值修改为特定于您的工程的命名空间名称。

输入参数

全部折叠

Embedded Coder 配置对象用于从 MATLAB® 代码生成 C/C++ 代码。使用 coder.config 创建对象。

示例: cfg = coder.config('lib','ecoder',true)

版本历史记录

在 R2017b 中推出