728x90
728x90

델리게이트 2

C#] 델리게이트(Delegate)의 호환성

타입 호환성 모든 델리게이트 타입은 다른 모든 델리게이트 타입과 호환되지 않음.메서드 대상이 동일한 델리게이트 인스턴스는 상등으로 간주.멀티캐스트 델리게이트는 같은 대상 메서드들이 같은 순서로 등록된 경우에 상등으로 간주. 매개변수 호환성 어떤 메서드를 호출 시, 그 메서드의 매개변수가 요구하는 것보다 구체적인 형식의 인수를 지정할 수 있음.델리게이트의 매개변수 형식이 대상 메서드의 매개변수 형식보다 구체적일 수 있으며, 이를 반변성(Contravariance)라고 함. 이러한 특성은 기본적으로 다형성을 가진 메서드의 정상적인 작동 방식임. 반환 형식의 호환성 어떤 메서드를 호출 시, 호출자가 요구한 것보다 구체적인 형식 값을 메서드가 반환 가능.델리게이트는 대상 메서드의 반환 형식보다 더 구체적으로 반..

C#] Delegate(델리게이트, 대리자) - 1

### Delegate Delegate type은 그 형식의 인스턴스를 호출할 수 있는 종류의 메서드를 정의함.좀 더 구체적으로 이 형식은 그런 메서드의 반환 형식과 매개변수 형식들을 정의함.delegate는 전통적인 프로그래밍 언어에서의 callback과 유사한 측면이 있다. 일반적으로 이 callback은 C의 함수 포인터 같은 지연 호출 수단을 일컫는 용어로 쓰임. 반환 형식이 int, int 형식의 매개변수 하나를 받는 모든 메서드에 사용 가능한 delegate type 정의한 예. delegate int Transformer (int x); class Test { static void Main() { Transformer t = Square; int result = t(3); Console.Wr..

728x90