익명 메서드(Anonymous Methods) General .NET2008/11/30 00:06
익명 메서드(Anonymous Methods)
- 메서드를 통해 처리하는 내용을 인라인의 형태로 처리하는 방법을 제공
- delegate를 통해 메서드를 호출하는 경우 호출할 수 있는 메서드의 타입을 델리게이트를 생성하면서 선언하고, 이벤트가 발행하였을 경우에 델리게이트를 통해 선언된 메서드를 호출, 작업처리
using System;
using System.Collections.Generic;
using System.Text;
namespace SimpleDelegateSample
{
delegate int AnyDelegate();
class Program
{
public static void AnyMethod(AnyDelegate ad)
{
Console.WriteLine(ad());
}
static void Main(string[] args)
{
int x = 10;
int y = 20;
AnyDelegate ad = delegate{ return x * y; };
AnyMethod(ad);
}
}
}
코드 설명
1. Main()를 실행
2. int 타입의 x, y변수에 각각 10과 20이라는 값을 할당.
3. ad라는 변수를 선언하고 데이터 타입을 AnyDelegate(사용할 메서드의 타입)로 한다.
4. delegate를 사용하여 상단에 선언된 AnyDelegate()가 해야 할 일을 구현하고 ad에 할당한다.
5. AnyMethod()에 ad를 전달한다. 이 때 ad는 AnyDelegate 타입이다.
6. 인자로 전달된 ad를 콘솔에서 실행하고 결과를 확인한다.
'General .NET' 카테고리의 다른 글
| 세티가 정리한 VB.NET(2) (0) | 2008/11/30 |
|---|---|
| 세티가 정리한 VB.NET(1) (2) | 2008/11/30 |
| 익명 메서드(Anonymous Methods) (0) | 2008/11/30 |
| Nullable 타입 (0) | 2008/11/30 |
| DataTable.NewRow (0) | 2008/11/30 |
| 닷넷2.0을 시작하며... (0) | 2008/07/22 |
