什么时候应该在 C++ 中使用“this”关键字? [复制]

2023-12-30

可能的重复:
在 C++ 中过度使用 this 是否会产生代码异味 https://stackoverflow.com/questions/1057425/is-excessive-use-of-this-in-c-a-code-smell

几年前,我在访问成员变量时养成了使用 this-> 的习惯。我知道这并不是绝对必要的,但我认为这样更清楚。

然后,在某个时候,我开始喜欢更简约的风格并停止了这种做法......

最近,我的一位资历较浅的同事问我是否认为这是一个好主意,我发现我对于我的偏好并没有一个好的答案......这真的是一个完全风格的选择还是有真正的原因为什么不在成员变量访问上添加 this-> 前缀会更好?


虽然这是一个完全主观的问题,但我认为一般 C++ 社区更喜欢not具有this->。它很混乱,而且完全不需要。

有些人用它来区分成员变量和参数。更常见的做法是在成员变量前添加一些前缀,例如单个下划线或m, or m_, etc.

在我看来,这更容易阅读。如果你需要this->为了区分变量,你做错了。要么更改参数名称(从x to newX)或有成员变量命名约定。

一致性是首选,所以不要强迫this->自己为了few您需要区分的情况(请注意,在初始化列表中,这是完全明确定义的:x(x),其中成员x由参数初始化x),只需获得更好的变量名称即可。

这留下了我唯一使用的时间this:当我实际上需要实例的地址时,无论出于何种原因。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么时候应该在 C++ 中使用“this”关键字? [复制] 的相关文章

随机推荐