У меня есть общий классДженерики вопрос
public class Decoder<SIGNAL> where SIGNAL : signalType, new()
signalType является абстрактным классом. Как объявить динамическое поле для его сохранения? Следующий код вызовет ошибку компиляции, указав, что декодер должен быть не абстрактным типом.
public class DecoderParent
{
private Decoder<signalType> decoder;
public DecoderParent(keys key)
{
switch(key)
{
case keys.SignalOne:
{
decoder = new Decoder<signalONE>();
break;
}
case keys.signalTwo:
{
decoder = new Decoder<signalTWO>();
}
}
}
}
Чтобы следовать лучшим методам, 'SIGNAL' должен быть' TSignal'. – jason