본문 바로가기
컴퓨터/C#

C# Delegate 예제

by Begi 2020. 4. 24.
반응형

Delegate (데리게이트)는 대리자라는 뜻으로 C의 함수 포인터와 비슷하다. 함수 포인터를 사용하여 함수의 인자로 함수 포인터를 전달하듯이 Delegate로 함수를 전달할 수 있다.

 

Delegate를 사용하는 방법은 다음과 같다.

1. Del이라는 Delegate을 선언한다.

2. 전달한 함수 Fun1을 만든다.

3. Delegate 생성

4. 함수를 전달 받는 함수 Fun2를 만든다.

5. 함수 Fun1을 Fun2의 인자로 전달한다.

 

 // 1.선언
 public delegate void Del(string text);


 // 2.함수 생성
 public static void Fun1(string text)
 {
   Console.WriteLine(text);
 }


 // 3.Delegate 생성
 Del h = Fun1;


 // 4.함수를 전달받는 함수
 public static void Fun2(Del f)
 {
   f("Hello");
 }


 // 5.함수 인자로 함수 전달
 Fun2(h)


 // 6.다음과 같이 사용도 가능
 h("Yes");

 

반응형

'컴퓨터 > C#' 카테고리의 다른 글

Visual C++와 C# 중 어느 것을 배우는 것이 좋을까?  (0) 2020.05.26
C# 시리얼 통신 프로그램  (0) 2020.04.28
C# foreach 사용법  (0) 2020.04.23
C# 배열  (0) 2020.04.23
C# combobox 높이 조절이 잘 안될때  (0) 2020.03.07

댓글