728x90
delegate형식
delegate 반환타입 이름 함수전달인자
namespace Delegate
{
class Program
{
delegate void Delegate();
static void Func1()
{
Console.WriteLine("Func1");
}
static void Func2()
{
Console.WriteLine("Func2");
}
static void DeleFunc(Delegate _delegate)
{
Console.WriteLine("다른 함수에서 호출");
_delegate();
}
static void Main(string[] args)
{
// delegate(대리자)
// 함수의 객체를 만들어서 인자로 전달한다!
Delegate _delegate = new Delegate(Func1); // 함수를 delegate객체에 전달.
// delegate 체이닝
_delegate += Func2;
_delegate();// 직접 호출도 가능하고, 다른 함수에 인자로 넘겨주는 것도 가능하다.
Console.WriteLine();
DeleFunc(_delegate);
}
}
}
728x90
'C# > C# 기본' 카테고리의 다른 글
async/await (0) | 2024.08.06 |
---|---|
Extension (0) | 2023.05.16 |
Reflection (리플렉션) (1) | 2023.05.16 |
Predicate (0) | 2023.05.16 |
Property(Getter, Setter) (0) | 2023.05.16 |