2010-08-06 2 views
4

나는 C#을 마스터하는 것과는 거리가 멀지 만 나에게는 그날의 아이가 나를 프로그래밍하여 나날이 향상시키고 있습니다.
WinForms 응용 프로그램을 만들 때 실용적으로 많은 컨트롤을 변경하고 사용하고 싶습니다.
내가 이해할 수없는 것은 this.control 키워드를 사용해야 할 때이고 단지 control 만 사용해야하는 경우입니다.
샘플 : 내 레이블의 텍스트를 변경하려면
내가 쓸 수C#에서 폼의 컨트롤로 작업 할 때이 키워드를 사용하는 경우

mylabel.text = "Text for label" 

또는

this.mylabel.tex = "Text for label" 

올바른 방법으로 이들 중입니다

? WinForms에서 컨트롤 (예 : DataGrid, 텍스트, 테이블 등)을 사용할 때 this 키워드를 사용할 때 간단한 설명이 있습니까?

답변

7

이 경우 두 줄 모두 "정확함"입니다. 그러나 여기에는 "this"를 사용하지 않아도됩니다.

"this"를 사용하는 한 가지 이유는 모호성을 해결해야하는 경우입니다. "this"는 클래스의 멤버에게 명확한 액세스를 제공합니다. 이 예를 들어, 당신은 "이"는 같은 이름 ("번호")를 인수로 전달의 값을 클래스 멤버 "번호"를 참조하여 그것에 할당 할 필요

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

    private int number; 
} 

예를 들면 다음과 같습니다이다 .

물론이 문제를 방지하는 명명 규칙을 사용하는 것이 좋습니다. 개인 회원 데이터 앞에 밑줄을 넣는 경향이 있습니다 (예 : _ 번호).

+0

예. 모호성을 제거하기 위해'this'를 사용하는 것보다 몇 가지 명명 규칙을 사용하는 것이 좋습니다. – Manfred

+0

.NET 스타일 가이드에 의해 명시 적으로 권장되지 않습니다. 그것을 "ungarian"이라고 생각하는 것. 어쩌면 "resharpian". –

5

필드/속성과 로컬 변수 사이를 모호하게 구분할 때만 꼭 필요합니다. 다른 사람들은 다른 장소에서 그것을 사용하는 것을 선호하지만, 그것은 스타일 결정입니다.

관련 문제