Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 델리게이트(Delegate)로 수학 연산을 호출하는 방법

C# 델리게이트를 활용한 수학 연산 호출 예제

C#에서 델리게이트(delegate)를 사용하여 수학 연산을 호출하는 원리를 이해하려면, 간단한 예제를 통해 살펴보는 것이 가장 효과적입니다. 여기서는 특정 숫자를 5로 나누는 연산을 예로 들어보겠습니다.

1. 클래스와 함수 정의

먼저 클래스를 선언하고, 그 안에 나눗셈을 수행하는 함수를 작성합니다.

public class Demo {
    public static double DivideFunc(double value) {
        return value / 5;
    }
}

2. 델리게이트 선언

다음으로, double 타입의 매개변수를 받아 double 값을 반환하는 델리게이트를 정의합니다.

delegate double myDelegate(double x);

3. 값 설정 및 메서드 호출

델리게이트 배열에 앞서 만든 함수를 할당하고, 값을 전달하여 호출합니다.

myDelegate[] val = { Demo.DivideFunc };

result(val[0], 20);

4. 델리게이트를 통한 수학 연산 실행

전달받은 델리게이트를 실행하여 결과를 출력하는 메서드입니다.

static void result(myDelegate d, double value) {
    double result = d(value);
    Console.WriteLine("Result = {0}", result);
}

위 코드를 실행하면 "value / 5", 즉 20 ÷ 5에 대한 결과가 다음과 같이 출력됩니다.

Result = 4

정리

이 예제에서 알 수 있듯이, 델리게이트는 메서드를 매개변수처럼 전달할 수 있게 해주는 강력한 기능입니다. 이를 활용하면 런타임에 실행할 연산을 동적으로 지정할 수 있어 코드의 유연성과 재사용성이 크게 향상됩니다. 실무에서는 콜백 처리, 이벤트 핸들링, LINQ 등 다양한 상황에서 델리게이트가 폭넓게 활용됩니다.