chap.9 델리게이트

2011. 2. 21. 00:39 from PROGRAMMING/C#.NET

1. 델리게이트

1.1 메서드 참조

1.2 공변성

1.3 델리게이트 활용

 

2. 이벤트

2.1 멀티캐스트

2.2 이벤트

2.3 익명 메서드


 

1. 델리게이트(Delegate)

1) 메서드를 가리키는 참조형

2) 메서드의 번지를 저장하거나 다른 메서드의 인수로 메서드 자체를 전달하고 싶을 때 사용(C++의 '포인터'에 대응)

3) 포인터와 선언형식 차이: 포인터(인수의 타입만 지정), 델리게이트(완전한 형식 요구)

4) 형식: 지정자 delegate 리턴타입 이름(인수목록);

→완전한 형식을 요구하므로 형식 인수 이름도 일단은 지정되어야 함.

5) System.Delegate로부터 파생되는 하나의 클래스 타입이어서 꼭 클래스에 소속되지 않고 네임스페이스에 바로 소속 가능.

클래스가 선언될 수 있는 모든 곳에 델리게이트도 선언 가능 하지만, 클래스 바깥쪽에 선언하는 것이 관례.

6) 타입이므로 그 자체만으로 메서드를 가리킬수 없으며 인스턴서 생성 후 메서드를 가리키도록 초기화 해야함

7)          int method(string s)

delegate int dele(string s)

① 리턴 타입과 인수는 그대로 옮겨 적고

② 메서드 이름을 델리게이트 이름으로 바꾸고

③ 앞에 delegate 키워드를 붙인다.

'PROGRAMMING > C#.NET' 카테고리의 다른 글

[0221과제] 수퍼팩(C#)  (0) 2011.02.23
chap.10 닷넷 클래스  (0) 2011.02.22
chap.8 인터페이스  (0) 2011.02.11
chap.7 클래스 상속 3. 추상 클래스  (0) 2011.02.11
chap.7 클래스 상속 2. 재정의  (0) 2011.02.11
Posted by 마마필로 :