Предположим, у меня есть класс А.
А В и С являются потомками А.
Класс A имеет общий алгоритм для сортировки массивов типа A, так что я могу использовать его для B и C, не переписывая алгоритм для каждого.
В алгоритме иногда приходится менять местами.
Проблема в том, что я могу видеть только объекты типа А, и если я это сделаю:
A aux = array[i]
array[i] = array[j]
array[j] = aux
Мне кажется, у меня проблема. Поскольку массив [i], возможно, имеет тип B, а вспомогательный тип A, поэтому я думаю, что теряю информацию.
Я уверен, что вы понимаете эту ситуацию ... как я могу отсортировать общий массив объектов, используя алгоритм метода отца?
Редактировать: исходный массив статичен.
Edit2: Так что невозможно иметь:
A :: sort (A array []);
И делать то, что я хочу?, Не могу поменяться.
Единственный способ иметь массив ссылок? * Массив []?