☰
  • 首页
  • 规则分类
  • 项目介绍
search
•••

形式参数不应被修改

8.6 ID_paramModified
目录 › next › previous

为了提高可读性和可维护性,应分清形式参数和普通局部对象的职责,避免修改形式参数。

参数记录着外部输入函数的数据,为了便于阅读和调试,应保持参数的值不变。另外,为了修改实际参数而修改非引用型的形式参数是无效的,也是初学者易犯的错误。

示例:

void foo(int i)
{
    for (i = 0; i < 5; i++) {   // Non-compliant
        ....
    }
}

例中参数 i 被当作局部变量使用是不符合要求的。

例外:

void bar(int& i)
{
    i = 0;   // Compliant
}

引用型参数不受本规则限制。

相关

ID_invalidWrite

参考

MISRA C 2012 17.8
Copyright©2024 360 Security Technology Inc., Licensed under the Apache-2.0 license.