반응형
C#에서 델리게이트는 콜백함수를 구한하기 위해 사용된다.
한정자 delegate 반환형식 델리게이트명( 매개변수);
로 사용된다. ex) delegate int myDelegate(int a, int b);
델리게이트를 이용해서 콜백을 구현하는 과정을 요약해보면 다음과 같다.
1. 델리게이트 선언
2. 델리게이트의 인스턴스를 생성, 인스턴스를 생성할 때는 델리게이트가 참조할 메소드를 매개변수로 넘김
3. 델리게이트 호출
사용자가 원할때 알려주는 객체 = 이벤트!
이벤트는 델리게이트를 event 한정자로 수식해서 만든다. 선언하고 사용하는 절차는 다음과 같다.
1. 델리게이트를 선언, 이 델리게이트는 클래스 안 밖 상관 없이 선언해도 됨.
2. 클래스 내에 선언한 델리게이트의 인스턴스를 event 한정자로 수식해서 선언함.
3. 이벤트 핸들러를 작성함. 이벤트 핸들러는 선언했던 델리게이트와 일치하는 메소드면 가능.
4. 클래스의 인스턴스를 생성하고 이 객체의 이벤트에 작성했던 이벤트 핸들러를 등록함.
5. 이벤트가 발생하면 이벤트 핸들러가 호출됨!
반응형
'컴퓨터 프로그래밍' 카테고리의 다른 글
c# 강좌 정적필드와 메소드 (0) | 2019.06.12 |
---|---|
c#강좌 람다식 (0) | 2019.06.12 |
C# 강좌 프로퍼티. (0) | 2019.06.07 |
C# 강좌 추상클래스 (0) | 2019.06.07 |
c# 강좌 업캐스팅과 다운캐스팅 (0) | 2019.06.07 |