더북(TheBook)

실행 결과

안녕하세요.
반갑습니다.
또 만나요.
8

Print 클래스에는 Show() 메서드가 하나 준비되어 있습니다. ①은 Show() 메서드를 사용하는 기본 방식이며, 처럼 새로운 PrintDelegate 대리자를 만들어 이곳에 담아 대신 호출하는 방식도 있습니다. 좀 더 나아가서 처럼 delegate 키워드로 이미 만들어 놓은 함수가 아닌 해당 시점에 이름이 없는 무명 메서드를 만들고 호출해서 사용할 수도 있습니다.

사실 필자도 무명 메서드는 람다 식이 등장하면서 거의 사용하지 않는데, 앞 예제 정도만 학습해 두세요.

다음 코드를 보면 대리자에 특정 메서드를 무명 메서드가 아닌 람다 식으로 바로 만들어 사용합니다. 이처럼 대리자에는 직접 메서드를 적용하든지, 무명 메서드 아니면 람다 식을 사용하든지 정할 수 있습니다.

> delegate int IntParameterAndIntReturnDelegate(int x);
> IntParameterAndIntReturnDelegate pow = (x) => x * x;
> pow(3)
9
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.