프로그래밍/C,C++

[C#] 이벤트

chance 2013. 9. 12. 18:51

* event delegate

일종의 콜백 함수의 함수 포인터로 이벤트 발생시 호출할 메쏘드의 타입에

맞추어 선언하게 된다.

 

public delegate void Test();

 

 

* 실제 호출이될 메쏘드를 delegate 형식에 맞춰 구현한다.

 

public void MyTestFunc() {

// 어쩌구 저쩌구

}

 

 

* event 키워드

위 delegate 함수들을 등록하고, 제거 하는 등의 저장소가 필요한데, event 키워드로

간단히 정의가 가능하다.

 

public event Test EventDelegate;

 

 

* 메쏘드를 event에 등록한다.

EventDelegate += new Test(MyTestFunc);

 

 

* 작업후 이벤트 호출

EventDelegate();