출처 : https://msdn.microsoft.com/ko-kr/library/bb384067.aspx
where(제네릭 형식 제약 조건)(C# 참조)
public class MyGenericClass<T> where T:IComparable { }
참고 |
---|
|
class MyClass<T, U> where T : class where U : struct { }
public class MyGenericClass<T> where T : IComparable, new() { // The following line is not possible without new() constraint: T item = new T(); }
interface IMyInterface { } class Dictionary<TKey, TVal> where TKey : IComparable, IEnumerable where TVal : IMyInterface { public void Add(TKey key, TVal val) { } }다음과 같이 제네릭 메서드의 형식 매개 변수에 제약 조건을 연결할 수도 있습니다.
public bool MyMethod<T>(T t) where T : IMyInterface { }
delegate T MyDelegate<T>() where T : new()