더북(TheBook)

대리자 개체에 람다 식 담기

대리자에 람다 식을 담아 대신 호출할 수 있습니다. 간단한 형태의 메서드를 따로 만들지 않고 람다 식으로 만들면 됩니다.

> delegate void Lambda(); //① 대리자 선언
> //② 대리자 개체에 람다 식 정의: goes to 연산자
> Lambda hi = () => Console.WriteLine("안녕하세요.");
> hi();                   //③ 대리자 개체 호출
안녕하세요.

이 코드처럼 매개변수가 없는 람다 식은 () => 본문 형태로 구현합니다.

 

매개변수도 있고 반환값도 있는 경우의 람다 식

이번에는 매개변수도 있고 반환값도 있는 람다 식을 사용해 보겠습니다.

> delegate int Lambda(int i); //① 매개변수도 있고 반환값도 있는 대리자 선언
> Lambda square = x => x * x; //② 람다 식으로 대리자 개체 생성
> square(3)
9
> square(4)
16

이 코드는 람다 식의 x => x * x; 형식으로 넘어온 정수 형식을 두 번 곱해서 반환하는 함수를 square 이름으로 대신 사용합니다.

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