Форум: "Основная";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];
ВнизИ снова про вызовы функций-членов Найти похожие ветки
← →
Набережных С. (2002-03-27 20:04) [9]
> Толик © (27.03.02 17:45)
Это как раз то, что написали MBo © (27.03.02 17:37) и vuk © (27.03.02 17:21).
TMyClass = class...
function MyFunction...;virtual;abstract;
Наследуешь классы от него и в них перекрываешь MyFunction. Массив, например, такой(или любой другой):
MyObjArray : array of TMyClass;
Заполняешь массив потомками TMyClass и вызываешь такую процедуры:
procedure MyEnumProc(A: array of TMyClass);
var
n:integer;
begin
for n:=0 to Length(A)-1 do
A[n].MyFunction...
end;
Для каждого объекта будет вызван метод именно его класса или унаследованный, если в классе он не переопределен. В этом и состоит смысл виртуальных и динамических методов.
А создавать экземпляры классов с абстрактными методами не следует. Никогда.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.16 c