Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

나의 지식 보관소

대리자 본문

프로그래밍 언어/C#

대리자

야식은진리다 2020. 5. 5. 22:47

대리자는 메서드에 대한 참조이다. 즉 대리자에 메서드의 주소를 할당한 후 호출하면 이 대리자가 메서드를 호출하여 준다. 대리자는 다음과 같이 delegate 키워드를 이용해서 선언한다.

1
한정자 delegate 반환형식 대리자이름 ( 매개변수목록 )

단, 대리자는 참조할 메서드의 매개변수와 반환형식이 같아야한다.

 

제네릭 대리자

1
delegate int Compare<T>(T a, T b);

다음과 같이 선언한다.

 

대리자 체인

대리자는 하나의 메서드 뿐만 아니라 여러 메서드를 동시에 참조할 수 있다. 메서드를 대리자에 += 연산자를 통해 결합할 수 있다.

1
2
3
delegate1 += method1
delegate1 += method2
delegate1 += method3

대리자에서 메서드를 끊어 낼때에는 반대로 -= 연산자를 사용한다.

1
2
3
delegate1 -= method1
delegate1 -= method2
delegate1 -= method3

 

'프로그래밍 언어 > C#' 카테고리의 다른 글

익명 메서드와 람다식  (0) 2020.05.06
이벤트 event  (0) 2020.05.05
프로세스와 스레드 / 동기화  (0) 2020.05.05
제네릭(일반화) / Generic  (0) 2020.04.22
가변 배열 ( Jagged Array )  (0) 2020.04.22