Вниз
Скачать: CL | DM;

перегрузка виртуальных функций   Найти похожие ветки 

 
Vitalik   (2003-10-29 13:06) [0]

Здравствуйте!
Вопрос может и тупой, но всё же я не знаю на него ответа...
есть класс
a = class
function get: integer; virtual;
end;

и его наследник
b = class
function Get: integer; override;
end;

function a.get: integer;
begin
***
end;

function b.get: integer;
begin
вот как мне из этой функции вызвать функцию Get предка?
И нужно чтобы эта функция вернула результат работы функции Get предка.
end;

как это сделать?
Спасибо!


 
MBo ©   (2003-10-29 13:08) [1]

inherited


 
Skier ©   (2003-10-29 13:09) [2]

1) b = class (a)
2)
function b.get: integer;
begin
Result := inherited Get;
end;


 
Vitalik   (2003-10-29 13:21) [3]

Спасибо!
Я как в процедурах-то inherited использовать знал, а вот в функциях не приходилось ;)


 
Anatoly Podgoretsky ©   (2003-10-29 13:29) [4]

А это директива компилятору использовать родителя


 
Digitman ©   (2003-10-29 14:10) [5]


> Vitalik


только это не "перегрузка" называется (virtual), а "перекрытие" (или "переопределение" иной раз называют это)

перегрузка (overload) - нечто совсем иное



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.032 c
3-40791
Митяй
2003-10-22 15:15
2003.11.13
БД не сохраняет записи?????


3-41050
Jack
2003-10-26 15:29
2003.11.13
Проблема при открытии Paradox таблицы через ADO


6-41826
Morfein
2003-09-14 22:36
2003.11.13
Порты


3-41040
Bless
2003-10-24 12:01
2003.11.13
Как получить координаты ячейки DBGrida?


4-42296
diMAN
2003-09-09 11:52
2003.11.13
Хук на консольное окно




   Наверх