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
        {
        }

};

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...