Czy typ interfejsu ogólnego może być oparty na określonej klasie nadrzędnej?Czy generics C# mogą mieć określony typ podstawowy?
Na przykład:
public interface IGenericFace<T : BaseClass>
{
}
Oczywiście powyższy kod nie działa, ale gdyby tak się stało, co próbuję powiedzieć, że kompilator T
musi być podklasa BaseClass
. Czy można to zrobić, czy są na to plany itp.?
Myślę, że byłby przydatny w odniesieniu do konkretnego projektu, upewniając się, że ogólny interfejs/klasa nie jest używany z niezamierzonymi typami w czasie kompilacji. Lub też, aby sortować własny dokument: pokaż, jakiego rodzaju jest przeznaczony.
można znaleźć więcej informacji o tym, jak ograniczyć typ na http://msdn.microsoft.com/en-us/library/d5x73970 (VS.80).aspx – tvanfosson
@Kyralessa, czy to możliwe, aby mieć ogólną klasę bazową – Demodave