■ Func 대리자, Action 대리자:
- .NET 라이브러리에서 제공하는 사전에 정의된 대리자
- 일반화(Generalization)와 최대 16개 매개변수 지원
- Func 대리자 : 반환 값이 있는 대리자
- Action 대리자 : 반환 값이 없는 대리자
■ Func 대리자
■ Example
using System;
namespace LambdaExample
{
class Program
{
static void Main(string[] args)
{
Func<int> func1 = () => 100;
Console.WriteLine($"func1() 반환값 : {func1()}");
Func<int, int> func2 = (x) => x + 100;
Console.WriteLine($"func2(100) 반환값 : {func2(100)}");
Func<int, int, string> func3 = (x, y) => $"결과는 {x + y} 입니다.";
Console.WriteLine($"func3(100, 200) 반환값 : {func3(100, 200)}");
}
}
}
■ Action 대리자
■ Example
using System;
namespace LambdaExample
{
class Program
{
static void Main(string[] args)
{
Action act1 = () => Console.WriteLine("입력 값 없는 형태"); ;
act1();
Action<int, int> act2 = (x, y) => Console.WriteLine($"x : {x}, y : {y} 입니다.");
act2(100, 200);
string result = string.Empty;
Action<string> act3 = (str) => result = $"안녕 {str}";
act3("memoo");
Console.WriteLine($"result : {result}");
}
}
}
'개인공부 > C#' 카테고리의 다른 글
[C#] LINQ (0) | 2023.02.21 |
---|---|
[C#] 람다식(Lambda Expression) (0) | 2023.02.17 |
[C#] 대리자(Delegate), 이벤트(Event) 차이점 (0) | 2023.02.15 |
[C#] 이벤트(Event) (0) | 2023.02.14 |
[C#] 대리자(Delegate) (0) | 2022.10.13 |