Skip to main content

对话框:静态分析设置 - 命名约定

功能:在对话框中,您 定义 变量的数据类型和范围的前缀,以及 POU 和用户定义的数据类型 (DUT) 的前缀。静态分析检查 遵守 与命名约定。当未遵守约定时,静态分析会在 留言 看法。有关更多信息,请参阅: 配置和运行静态分析

称呼

  • 项目 → 项目设置 菜单, 静态分析 类别, 打开配置对话框 关联

  • 构建→静态分析→设置 菜单

要求

  • CODESYS Static Analysis 包已安装。

  • 一个项目已打开。

错误消息以下列格式显示: sa_icon_message.png NC <prefix of convention number> : <message text>. NC 代表“命名约定”。例如,错误消息 sa_icon_message.pngNC0102:名称无效… 表示违反 POU 类型的命名约定 102 PROGRAM.

提示

您可以使用 'naming' 用于停用个人命名约定的 pragma 身份标识.标识符可以以任何东西开头,不一定以前缀开头。

筛选

要搜索的字符串的输入字段

具有命名约定的表

名称

可以定义前缀的节点和元素。

每个元素后括号中的数字(例如, 程序 (102)) 是在不符合命名约定的情况下报告的前缀约定编号。

字首

前缀的输入字段

  • 可以通过逗号分隔指定多个前缀。

    例子:

    POU 的前缀, PROGRAM (102)prog, PRG_

    POU 的前缀, FUNCTION (103)fun, FUN_

  • 正则表达式 (RegEx) 也可以用于前缀。为此,一个 @ 必须放在前面。

    例子:

    名字必须以 x 并且可能包含范围中的一个字符 a-dA-D@x[a-dA-D].

  • 对于类型的变量 别名 和 POU 类型 财产, 前缀可以用占位符定义 {datatype}.

变量的前缀

可以根据数据类型或范围定义前缀的所有变量的组织节点。

POU 的前缀

可以定义前缀的所有 POU 类型和方法范围的组织节点

DUT 的前缀

可以为其定义前缀的 DUT 数据类型(结构、枚举、别名或联合)的组织节点

自定义类型的前缀

特殊自定义类型的组织节点(特别是来自库的那些)

您可以使用约定扩展列表:单击其下方的空白区域。在里面 输入助手 对话框,指定自定义类型的名称或选择自定义类型。

要删除约定,选择它并按 德尔 钥匙。

注意:这些约定优先于使用属性定义的前缀 {attribute 'nameprefix' := '<prefix>'}.

选项

前缀后的第一个字符应该是大写字母

standard icon: 定义前缀后变量名的第一个字符不是大写字母时,静态分析会报错。

结合范围前缀和数据类型前缀

standard icon:作为其命名空间,变量必须具有定义的前缀,后跟为其数据类型定义的前缀。

示例:定义了以下前缀: g_ 为了 VAR_GLOBAL, 和 r 对于数据类型 真实的.

代码分析报告没有前缀的全局 REAL 变量的错误 g_r.

_cds_icon_option_deactivated.png:如果为变量指定了命名空间的约定,则考虑这些约定。因此,任何数据类型约定都会被忽略。

示例:定义了以下前缀: g_ 为了 VAR_GLOBAL, 和 r 对于数据类型 真实的.

代码分析仅报告全局错误 REAL 没有前缀的变量 g_.

可组合数据类型的递归前缀

standard icon: 组合数据类型的变量必须具有遵循定义的命名约定的复合前缀。

例子:

ppiVariable : POINTER TO POINTER TO INT;

前缀 p 为数据类型的变量定义 POINTER, 和前缀 I 为数据类型定义 INT.

静态分析报告所有类型变量的错误 POINTER TO POINTER TO INT 没有前缀的 ppi.

refaiVar : REFERENCE TO ARRAY[1..3] OF INT;

前缀 ref 为数据类型定义 REFERENCE TO, 前缀 a 对于一个数组,以及前缀 I 对于数据类型 INT.

静态分析报告所有类型变量的错误 REFERENCE TO ARRAY[1..3] OF INT 没有前缀的 refai.

例子

以下命名约定大部分对应于在 CODESYS 对于“标识符”。

_san_prefixes_for_variables_types.png
_san_prefixes_for_variables_scopes.png
_san_prefixes_for_pous_and_duts.png

例子

命名约定 (1) 参考标准 POU TON.因此,特殊库 POU 的声明会检查前缀“ton_”。单击空格 (2) 以插入更多命名约定。

_san_img_prefixes_for_user_defined_types.png