为什么VS经常使用“这个”?

时间:2011-03-09 09:30:59

标签: c# .net this

我知道“this”关键字用于什么,但不知道为什么VS几乎总是使用它,就像这样。无效。如果调用放在类中并且标识符没有问题,那么它有什么用呢?

6 个答案:

答案 0 :(得分:2)

使用它的不是VS而是开发人员。如果你使用像Resharper这样的工具,它总是指出“this”不必要或多余的地方。

答案 1 :(得分:2)

我认为这主要是风格问题。使用this引用可以100%清楚您想要引用的内容。

你说标识符没有问题(因为范围内没有名称冲突),但这并不意味着将来不会有。

可以将其他名称或类添加到外部范围。它不太可能,也可能不会引起问题,但它有助于消除任何模棱两可的可能性。

答案 2 :(得分:1)

它明确显示此变量或方法属于此类。它更具可读性。但它不是强制性的。由开发人员和团队决定是否要以这种方式使用它。这只是另一种代码风格。

答案 3 :(得分:1)

在不必要的情况下添加this会降低代码的复杂性并使其更具可读性。

答案 4 :(得分:1)

  

如果将调用放在类中并且标识符没有问题,那么它有什么用呢?

我假设你在谈论自动生成的代码,例如:表格设计师。它可以

a)编写以分析已经发出的代码,确定标识符是否含糊不清,然后根据该标识决定是否使用this.来正确限定名称,或者,

b)只需对所有类范围的标识符使用this.


在许多情况下,它似乎是多余的,但无论你是否在明确的上下文中使用this.,都会产生完全相同的IL代码,因此不会总是包含它而造成任何伤害。< / p>

答案 5 :(得分:1)

哈哈哈,因为如果你使用“这个”。然后Intellisense弹出,你可以随意使用所有的班级成员,而不必输入那么多(或制作这么多错别字,无论如何......)