Я чувствую, что мой вопрос довольно глупый, или другой способ выразить это: я слишком потерялся в своем коде, чтобы увидеть обходной путь. Остановитесь слишком долго на проблеме, и ваше зрение становится уже и более узким> <. Плюс я не достаточно хорош с наследованием, полиморфизмом и такОбщая функция в списке производного класса
Вот идея: у меня есть несколько списков производного класса, и я бы хотел назвать общие функции в этих списках (присоединяющиеся и изменяющие члены базового класса). Я чувствую, что есть какое-то отношение к наследованию, но мне пока не удается заставить его работать так, как я хочу.
Вот очень простой пример того, что я намерен сделать:
class Baseclass
{
public int ID;
public string Name;
}
class DerivedClass1 : Baseclass
{
}
private void FuncOnBase(List<Baseclass> _collection)
{
// ...
foreach (Baseclass obj in _collection)
{
++obj.ID;
}
// ...
}
private void FuncTest()
{
List<DerivedClass1> collection1 = new List<DerivedClass1>();
collection1.Add(new DerivedClass1() { ID = 1 });
collection1.Add(new DerivedClass1() { ID = 2 });
collection1.Add(new DerivedClass1() { ID = 3 });
FuncOnBase(collection1); // ==> forbidden, cannot convert the derived class list to the base class list
}
Должен любить тот факт, что я догадался, что это был ваш пост после прочтения всего 3 слов :) –
Я становлюсь слишком предсказуемым? –
Большое спасибо, очень полезная идея :) – Chouppy