在C++中通常用某种前缀命名成员变量来表示它们是成员变量而不是局部变量或参数.如果你来自MFC背景,你可能会使用m_foo
.我myFoo
偶尔也见过.
C#(或者可能只是.NET)似乎建议只使用下划线,如_foo
.这是否允许C++标准?
在C++中,关键字this
通常是否省略?例如:
Person::Person(int age) {
_age = age;
}
Run Code Online (Sandbox Code Playgroud)
相反:
Person::Person(int age) {
this->_age = age;
}
Run Code Online (Sandbox Code Playgroud) 可能重复:
在C++中过度使用此代码气味
多年前,我养成了在访问成员变量时使用this->的习惯.我知道这不是绝对必要的,但我认为它更清楚.
然后,在某些时候,我开始更喜欢更简约的风格,并停止了这种做法......
最近我被一个更年轻的同龄人问到我是否认为这是一个好主意而且我发现我对自己的偏好没有真正的答案...这真的是一个完全风格的选择还是有真正的原因为什么不在成员变量访问前加上this->更好?