【发布时间】:2010-09-06 14:23:03
【问题描述】:
我很好奇其他人如何使用 this 关键字。我倾向于在构造函数中使用它,但我也可以在整个类中的其他方法中使用它。一些例子:
在构造函数中:
public Light(Vector v)
{
this.dir = new Vector(v);
}
其他地方
public void SomeMethod()
{
Vector vec = new Vector();
double d = (vec * vec) - (this.radius * this.radius);
}
【问题讨论】:
-
当您真正需要
this在 MSDN 时,我找到了很好的例子。请关注this link ... ;-) -
如果您必须理解和优化或重写其他人,大部分是写得不好的代码,您会很高兴拥有
this或任何其他限定符,以便从简单的外观您知道变量的范围(特别是省略了常量的类限定符(相同的包或层次结构)或super/base限定符)。而且使用像_foo这样的常用语法对我来说似乎并不优雅。按_进行智能感知比输入this更耗时。为什么要打扰!使用 Eclipse 自动保存格式化功能,如果您忘记了限定符,则无需_。 -
在阅读了下面的答案和 cmets,以及阅读了 MSDN 文档:docs.microsoft.com/en-us/previous-versions/visualstudio/… 关于 6 年未更新的 this 关键字后,我会建议永远不要使用 this 关键字。没有用。不要使参数同名,这会令人困惑和愚蠢。为什么要这么做?另外,不要在使用 this 时传递实例,这也是令人困惑和愚蠢的。
标签: c# coding-style this