Форум: "Начинающим";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
ВнизКлассы Найти похожие ветки
← →
Belorus © (2007-04-14 08:34) [0]Есть массив элементов TMyClass...
Каждый элемент если точно является наследником этого класса, то есть является либо TMySubclass1 либо TMySubclass2..
У обеих субклассов есть метод Method1 с одинаковыми аргументами, но с разным кодом. У класса TMyClass этого метода нету.
Как мне вызвать этот метод у всех элементов массива, если подклассов будет скажем не 2 а 2000 ? Можно ли как нибудь объяснить компилятору, что у всех субклассов TMyClass есть этот метод , и соответственно не делать такую процедуру
If Array1[Temp] is TMySubclass1 then TMySubclass1.Method1;
If Array1[Temp] is TMySubclass2 then TMySubclass2.Method1;
If Array1[Temp] is TMySubclass3 then TMySubclass3.Method1;
← →
MBo © (2007-04-14 08:49) [1]Сделать промежуточный класс с виртуальным абстрактным методом Method1, подклассы наследовать от него, и в кажом реализовать этот перекрытый метод.
← →
Kolan © (2007-04-14 10:13) [2]> Сделать промежуточный класс с виртуальным абстрактным методом
> Method1
А почему бы не сделать тоже самое, но без промежуточного класса? Те прям в предке…
← →
_Аноним (2007-04-14 10:59) [3]
> У класса TMyClass этого метода нету.
Сделай его TMyClass, но абстрактным (без реализации) ,а в потомках переопредели.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.082 c