Здравствуйте, ykurin, Вы писали:
Y>Не понятно, для чего наследный класс тоже шаблон? Вы четко указываете, что T — FieldInfo, так почему бы не написать так:
Y> public class InhClass: MyBase<FieldInfo>
Y> {
Y> public InhClass(FieldInfo obj)
Y> {
Y> _currentObject = obj;
Y> }
Y> //... остальные поля не важны
Y> }
Y>или у вас есть наследники от FieldInfo и вы планируете использовать их в InhClass?
Y>Лучше бы вы описали вашу задачу (без привязки к классам), возможно она имеет другое, более эффективное решение.
Спасибо
Задача в том что :
Обобщить некоторые общие поля в базовый класс ,которые будут использоваться в дочерних классах, но одно из полей (_currentObject) будет у каждого дочернего класса.
Ну я и подумал может его вынести в базовый класс,зачем я в каждом классе буду описывать его , а потом столкнулся с этой чудо конструкцией
public class InhClass<T>:MyBase<T> where T : Type
,из-за того что в каждом классе (_currentObject) будет иметь свой тип,
Использовать потом хочу как :
List<MyBase> _list = new List<MyBase> {new InhClass(),new ...()}
//и При _list[0].CurrentObject я хочу получить тот объект Дочернего класса типу которого он соответствует,FieldInfo или MethodInfo или тип другого наследника
//хотелось без боксингов, посему посмотрел в сторону дженериков
спасибо за внимание !