代码之家  ›  专栏  ›  技术社区  ›  adopilot

在C中使用窗体控件时何时使用此关键字#

  •  5
  • adopilot  · 技术社区  · 16 年前


    当我创建一个WinForms应用程序时,我想实际地更改和使用许多控件。
    我不明白的是什么时候我需要使用 this.control control .
    样品:

    mylabel.text = "Text for label"
    

    this.mylabel.tex = "Text for label"
    

    以下哪一个是正确的方法?什么时候用这个词有简单的解释吗 this

    2 回复  |  直到 14 年前
        1
  •  7
  •   sidewinderguy    16 年前

    在这种情况下,这两行都是“正确的”。但是,这里不需要使用“this”。

    使用“this”的一个原因是,如果您需要解决歧义这“为您提供了对类成员的明确访问。举个例子:

    class Test
    {
       public void SetNumber(int number)
       {
          this.number = number;
       }
    
       private int number;
    }
    

    在本例中,您必须使用“this”来引用类成员“number”,并将传入的参数中具有相同名称(“number”)的值赋给它。

    当然,最好有一个命名约定来防止这种情况。我倾向于在私有成员数据(即.\u编号)前面加下划线。

        2
  •  5
  •   Kirk Woll    16 年前

    只有在字段/属性和局部变量之间进行diambiging时才有严格的必要。其他人喜欢在其他地方使用它,但这是一个风格的决定。