微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – 参数的名称与成员变量的名称相同是不是很难?

参见英文答案 > Should I use the same name for a member variable and a function parameter in C++9个
例如,这是以下任何一种情况

>不好的做法
>难以理解
>低效(调用此指针)
>为什么这么做是不好的任何其他原因

.

class Person {

    public:
        string name;
        Person(string name) {
            this->name = name;
        }

};

附:

怎么样的人(字符串名称):名称(名称){}

解决方法

我能想到的唯一问题(不是真正的问题)是你无法区分成员变量与局部变量或函数参数.这只是编码风格,它与效率无关,但当你谈到不可读时,这对我来说是对的.

对我来说,我通常使用尾随下划线命名类成员变量.它有助于编码可读性并使维护更容易.

class Person {    
    public:
        string name_;                // member variable with traling `_`
        string m_surname;            // some microsoft style declares member start with `m_`
        Person(const string& name)   // pass parameter by reference. 
        : name_(name)                // you kNow you are constructing member name_ with name variable
        {
        }

};

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐