나는 다음과 같은 오류를 얻을타입이 기본 클래스의 컨테이너 인 C# Generics 클래스는 어떻게 관리합니까?
`System.Collections.Generic.List> .Add (MyContainer) '에 가장 적합한 오버로드 된 메서드는 다음 클래스에 대한 몇 가지 잘못된 인수 (CS1502) (GenericsTest)있다
:
A 및 B는 MyBase의 하위 클래스입니다.
public class GenericConstraintsTest
{
private MyList<MyContainer<MyBase>> myList = new MyList<MyContainer<MyBase>>();
public GenericConstraintsTest()
{
MyContainer<A> ca = new MyContainer<A>(new A());
this.Add<A>(new A());
this.Add<B>(new B());
}
public void Add<S> (S value) where S : MyBase
{
MyContainer<S> cs = new MyContainer<S>(value);
myList.Add(cs);
}
public static void Main()
{
GenericConstraintsTest gct = new GenericConstraintsTest();
}
}
내가 뭘 잘못하고 있니?
건배
1 : 바로 아래'IMyContainer' 정확히 내 대답. –
+1 .NET4에서만 사용할 수 있다는 것을 추가해야합니다 (C# 버전과 함께 제공됨). – ChrisWue