무효 클릭 IP 추적 중...
c#

[c#] 델리게이트(대리자) 익명 함수로 선언

꼬예 2022. 5. 13.

이전 포스팅에서 기본 델리게이트(대리자)사용법에 알아 보았다면, 이번 포스팅에서는 관련 추가 사항 중 하나인 익명함수로 선언 하는 방법에 대해 알아보겠습니다.

 

 

 

delegate() 이용

class Program
{
    public delegate void TestDelegate();


    public static void Main(string[] args)
    {
        Testing Test = new Testing();

        TestDelegate testDelegateFunction = delegate () { Console.WriteLine("테스트"); };
        testDelegateFunction();

    }

}

위와 같이 delegate ()를 이용해 함수명 없이 익명함수를 델리게이트에 할당할 수 있습니다. 

 

lambda 함수 이용

위 코드에 멀티캐스트로 함수를 추가하는 코드를 작성해볼건데요.

(멀티캐스트를 모르시면 해당 포스팅을 참조하시기 바래요.)

class Program
{
    public delegate void TestDelegate();


    public static void Main(string[] args)
    {
        Testing Test = new Testing();

        TestDelegate testDelegateFunction = delegate () { Console.WriteLine("테스트"); };
        testDelegateFunction += () => { Console.WriteLine("테스트2"); };

        testDelegateFunction();    

    }

}

람다 함수를 이용해서도 델리게이트에 함수를 할당할 수 있습니다.

'c#' 카테고리의 다른 글

[c#] Attribute(어트리뷰트) 란?  (0) 2022.05.16
[c#] enum(열거형) 사용 이유/사용법  (3) 2022.05.16
[c#] var 키워드란?  (0) 2022.05.13
[c#] 익명타입이란?  (0) 2022.05.13
[c#] 인터페이스란?  (1) 2022.05.12
  • 트위터 공유하기
  • 페이스북 공유하기
  • 카카오톡 공유하기
이 컨텐츠가 마음에 드셨다면 커피 한잔(후원) ☕

댓글