[c#] 델리게이트 데이터 타입
델리게이트는 C#에서 함수를 다른 함수에 전달하는데 사용되는 데이터 타입입니다. 이를 통해 메서드 혹은 함수를 변수처럼 사용할 수 있습니다.
델리게이트는 단순히 메서드의 특정 시그니처를 나타내며 해당 시그니처와 일치하는 모든 메서드를 참조할 수 있습니다.
델리게이트를 선언하는 방법은 다음과 같습니다.
delegate int Calculator(int x, int y);
위의 예제는 반환 형식이 int이고 두 개의 int 매개 변수를 갖는 델리게이트를 선언한 것입니다.
델리게이트는 다음과 같이 다른 메서드에 대한 참조를 저장할 수 있습니다.
public class Program
{
public static int Add(int x, int y)
{
return x + y;
}
public static int Subtract(int x, int y)
{
return x - y;
}
public static void Main()
{
Calculator calc = Add;
Console.WriteLine(calc(3, 2)); // 5 출력
calc = Subtract;
Console.WriteLine(calc(3, 2)); // 1 출력
}
}
위의 예제에서 Calculator
델리게이트는 Add
및 Subtract
메서드에 대한 참조를 저장하고 해당 메서드를 호출합니다.
델리게이트는 이벤트 핸들리이 하거나 비동기 프로그래밍에 사용되는 등 다양한 곳에서 활용됩니다.
델리게이트 데이터 타입은 C#의 강력한 기능 중 하나이며, 유연한 코드를 작성할 수 있도록 도와줍니다.
델리게이트에 대한 더 자세한 내용은 MSDN 델리게이트 문서를 참조하세요.