2011-07-01 5 views
2

특정 정적 기능을 구현하는 일반 매개 변수가 필요합니다. 나를위한 인터페이스 (teh 정적 함수)의 일부로 이러한 일반 매개 변수 제한을 갖는 것이 논리적이지만이 작업을 수행하는 방법을 찾을 수 없습니다. 어떤 도움을 주셔서 감사합니다.제네릭 매개 변수를 특정 정적 함수로 제한하려면 어떻게합니까?

현재 OOP 개발자로서 정적 값을 반환하는 정적 속성을 NOT으로 정의하면 이러한 문제를 해결할 수 있습니다. 이 속성은 일부 인터페이스의 일부이며 일반 매개 변수는 인터페이스에서 상속하는 제약 조건입니다.

답변

4

매개 변수가없는 생성자가 필요한 new() 제약 조건을 계산하지 않으면 정적 멤버가 형식 매개 변수를 제약하는 것과 같은 것이 없습니다.

static 멤버는 일반 C# 형식의 인터페이스로는 사용할 수 없지만 분명히 형식의 공용 API에 속할 수 있습니다.

내가 이전의 C#의 미래 버전 "static interfaces"의 가능성에 대해 블로그에 한 (단지 기능 요청의 종류 등)하지만 지금은 확실히 사용할 수 없습니다.

때로는 가장 좋은 대안은 별도의 유형이 정상적인 인터페이스를 구현하는 것입니다. 우리가 귀하의 상황에 대해 더 많은 정보를 제공 할 수 있다면 다른 접근 방법을 제안 할 수 있습니다.

0

현재로서는 C#에서 필요로하는 것과 같은 제약 조건을 설정할 수 없습니다. 나는이 기능도 갖고 싶다. :)

관련 문제