더북(TheBook)

40.5 메서드의 매개변수에 대리자 형식 사용하기

대리자는 메서드의 매개변수에 전달할 수 있습니다. 다음 내용을 입력한 후 실행해 보세요.

메서드의 매개변수에 대리자 사용: DelegateParameter.cs

using System;

class DelegateParameter
{
    delegate void Runner();

    static void Main()
    {
        RunnerCall(new Runner(Go));
        RunnerCall(new Runner(Back));
    }

    static void RunnerCall(Runner runner) => runner(); //넘어온 메서드(함수) 실행
    static void Go() => Console.WriteLine("직진");
    static void Back() => Console.WriteLine("후진");
}

실행 결과

직진
후진

특정 메서드의 매개변수에 대리자 형식을 지정하면, 해당 대리자를 받아 메서드 내에서 매개변수로 넘어오는 대신 호출해 주는 메서드를 실행할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.