익명 메서드를 var에 할당할 수 없는 이유
제공된 코드에서 var 변수에 익명 메서드를 할당하면 컴파일에 실패합니다. 대리자 유형을 추론하는 데 모호성이 있기 때문입니다.
익명 메소드는 다음과 같습니다. Func
또한 컴파일러가 대리자 유형을 사용하면 불일치가 발생할 수 있습니다. 예를 들어, var 할당이 성공적으로 컴파일되었다고 가정하면 다음 코드는 더 이상 의미가 없습니다.
var comparer = delegate(string arg1, string arg2, string arg3, string arg4, string arg5) { return false; };
Func<> .NET 3.5에서는 최대 4개의 인수만 허용하므로 유형 추론이 실제 동작과 일치하지 않습니다.
이 모호성을 해결하려면 익명 메서드를 변수에 할당할 때 대리자 유형을 명시적으로 지정해야 합니다. 이렇게 하면 코드의 명확성과 일관성이 보장됩니다.
위 내용은 C#에서 'var'에 익명 메서드를 직접 할당할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!