위임 (C # 프로그래밍 가이드)

대리인 참조 형식이 방법을 참조하여 파라미터리스트 및 반환형 특정를 나타내고있다. 대리인의 경우에, 당신은 호환 가능한 방법 서명 및 반환 유형과 연관된 인스턴스가 될 수 있습니다. 당신은 대리자 인스턴스를 통해 메서드를 호출 할 수 있습니다.

파라미터와 같은 다른 방법으로 대표 전송 방법. 이벤트 처리기 메서드는 대리자를 호출하는 것입니다. 당신은 특정 이벤트가 발생하면 (예 : Windows 컨트롤 등) 클래스는 당신은 당신의 방법을 호출 할 수 있습니다, 사용자 정의 메소드를 만들 수 있습니다. 다음 예는 프록시 문을 보여줍니다

public delegate int PerformCalculation(int x, int y); 

대리자는 대리자 형식과 일치하는 모든 접근 구조의 모든 클래스 나 메소드에 할당 할 수 있습니다. 방법은 정적 방법 일 수 있고, 방법의 인스턴스 일 수있다. 이러한 변화는 방법도 기존의 클래스에 새로운 코드를 삽입 할 수있는 프로그램 호출 할 수 있습니다.

 말

오버로딩 방법의 맥락에서, 서명 방법은 리턴 값을 포함하지 않는다. 그러나위원회의 맥락에서, 서명은 반환 값이 포함되어 있습니다. 즉, 방법 및 대리자는 같은 반환 형식이 있어야합니다.

파라미터로서 참조 방법하는 능력 대리자 정의 콜백있어서 이상적이다. 예를 들어, 두 개의 오브젝트를 비교하는 방법에 관한 기준을 파라미터로 분류 알고리즘으로 전달 될 수있다. 별도의 프로세스에서의 비교 코드 때문에, 따라서 정렬 알고리즘은 일반적인 방법을 쓸 수있다.

의뢰 개요

다음 속성 위탁 :

  • 주요 함수 포인터와 같은 C ++,하지만 위임 완전히 객체 지향 기억 함수 포인터처럼, C ++ 및 대리자 인스턴스는 방법은 개체를 동시에 캡슐화합니다.

  • 상기 방법은 매개 변수로 전달 위임 할 수있다.

  • 위임은 콜백 메소드를 정의 할 수 있습니다.

  • 위임 함께 링크 될 수 있으며, 예를 들어, 당신은 이벤트에 대한 다양한 방법을 호출 할 수 있습니다.

  • 방법은 정확하게 대리자 형식과 일치하지 않습니다. 자세한 내용은 위원회의 변형을 사용하여 .

  • C # 2.0 버전 도입 익명 방법에 전달 된 코드 블록 (별도로 정의하지 방법)하기위한 파라미터로서, 개념. C # 3.0 소개 람다 표현식들은 더 간결한 기록 인라인 코드 블록을 사용한다. 익명의 방법과 (일부 상황에서) 람다 식은 대리자 형식으로 컴파일 할 수있다. 이 기능은 현재 총체적으로 익명 함수로 알려져 있습니다. 람다 표현식에 대한 자세한 내용은 다음 페이지를 참조  람다 표현식을 .

  • https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/delegates/

추천

출처www.cnblogs.com/deepalley/p/12173899.html