Вниз
Скачать: 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.02 c
1-41264
werr
2003-10-31 16:37
2003.11.13
из функции, вызываемой из процедуры, закрыть исходную процедуру


1-41569
афвуд
2003-10-27 15:01
2003.11.13
Нужно достать значения left, top и т.д. формы, когда она в развёр


1-41466
ilka
2003-10-28 22:23
2003.11.13
загрузка SSL-евской длл


1-41378
_Agent_
2003-10-30 13:32
2003.11.13
Вопрос по Thread, мож кто прояснит в чём дело...


3-41107
неважно
2003-10-22 17:23
2003.11.13
Проблемка, посоветуйте плиз (двоичные данные)




   Наверх