ASP.NET/C#
델리게이트 Delegate 연습2 (이벤트)
http://portfolio.wonpaper.net
2019. 11. 16. 17:58
델리게이트 간단한 예제를 하나더 정리해 보았다.
Game Develper W님의 아주 좋은 포스팅 글
https://mrw0119.tistory.com/21?category=585887
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
32
33
34
35
36
37
|
namespace DeleLecture
{
// 델리게이트 타입선언
delegate void MyDelegate(int a);
class EventManager
{
// 이벤트 변수 선언
public event MyDelegate eventCall;
public void NumberCheck(int num)
{
if (num % 2 == 0)
eventCall(num); // 짝수마다 이벤트 호출
}
}
class Program
{
// 결과화면 출력메소드
static void EvenNumber(int num)
{
Console.WriteLine("{0}는 짝수", num);
}
static void Main(string[] args)
{
EventManager em = new EventManager();
// 이벤트 추가시키고 이벤트 메소드등록
em.eventCall += new MyDelegate(EvenNumber);
for (int i = 1; i <= 10; i++)
em.NumberCheck(i);
}
}
}
|
cs |
33번 라인상의 i값을 10번 돌리면서, NumberCheck()함수를 이벤트 동작시킨다.
이때 짝수인 경우만 eventCall 이벤트를 호출시키는데, 실제 화면에 보여지는 출력내용은 EvenNumber 의 소스내용이다.