什么是删除警告的最佳名称"阴影成员'这个"

时间:2014-05-12 14:42:51

标签: c++ warnings

在我得到的代码中,有很多“阴影成为'这个'的成员,因为代码写得像

class my_class {
    ..............
    int ret;

    void fun(ret){
        ..........
        this->ret = ret;
    }

}

当我要清理所有这些警告时,我认为更改函数参数更容易,比如“fun(retNew)”

但将它命名为retNew看起来并不好看。 anyboady有一个很好的建议吗?我想对于这种事情应该有一些很好的“标准”规则

由于

1 个答案:

答案 0 :(得分:1)

最好的方法是重命名成员或函数参数/本地,理想情况下更有意义。

你建议这听起来很人为,但是" ret"和" retNew"无论如何,这些变量命名清晰度都不是很好的例子!根据实际意义来命名。几乎总是可以提出更好,更准确地描述成员变量,参数和局部变量的名称。

虽然从语言的角度来看,行为是完全明确定义的,但是有许多隐藏的和类似的名称会让开发人员感到困惑。任何维护代码的人都需要经历所有范围解决方案的精神痛苦,而他们应该专注于代码正在做什么。

[编辑]你真正将某些东西传递到例如一个setter方法,它实际上与类成员相同,然后一个约定,如问题注释中建议的下划线前缀/后缀是好的,并且名称几乎相同的事实使得它直观清楚,你是处理"同样的事情"。