Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Странный метод   Найти похожие ветки 

 
зодиак   (2010-02-03 13:54) [0]

Разъясните мне пожалуйста, в чем тайный смысл метода FindRecord в Db.pas, и дальнейший эго вызовы.

function FindRecord(Restart, GoForward: Boolean): Boolean; virtual;

...

function TDataSet.FindRecord(Restart, GoForward: Boolean): Boolean;
begin
 Result := False;
end;

function TDataSet.FindFirst: Boolean;
begin
 Result := FindRecord(True, True);
end;

function TDataSet.FindLast: Boolean;
begin
 Result := FindRecord(True, False);
end;

function TDataSet.FindNext: Boolean;
begin
 Result := FindRecord(False, True);
end;

function TDataSet.FindPrior: Boolean;
begin
 Result := FindRecord(False, False);
end;


 
Сергей М. ©   (2010-02-03 13:57) [1]

Ну как в чем ?

В поиске записи, разумеется ..


 
зодиак   (2010-02-03 13:57) [2]

дальнейший эго вызовы =  дальнейшие его вызовы
Сорри.


 
TUser ©   (2010-02-03 13:58) [3]


> virtual;

Это значит, что у потомка может вызываться при таком вызове его собственный метод. В этом, наверное, вся тайна.


 
зодиак   (2010-02-03 13:58) [4]


> Сергей М. ©   (03.02.10 13:57) [1]

Дык он же ее не находит. НИКОГДА.


 
oldman ©   (2010-02-03 14:00) [5]


> зодиак   (03.02.10 13:58) [4]
> Дык он же ее не находит. НИКОГДА.


Находит. Но никому не говорит.


 
Сергей М. ©   (2010-02-03 14:00) [6]


> он же ее не находит. НИКОГДА.
>


А как он может найти, если он попросту не знает что где и как конкретно искать ?
Об этом знают конкретные наследники этого класса, перекрывшие метод FindRecord ..


 
зодиак   (2010-02-03 14:02) [7]


> TUser ©   (03.02.10 13:58) [3]

А если потомка нет? И вызывается, например, FindLast, которая паблик


 
Сергей М. ©   (2010-02-03 14:05) [8]


> если потомка нет?


А нет потомка - нет и смысла использования TDataSet.
На то он и TDataSet, чтобы предоставить некий унифицированный интерфейс, абстрагированный от конкретных реализаций.


 
зодиак   (2010-02-03 14:14) [9]


> Сергей М. ©   (03.02.10 14:05) [8]

Ясно, спасибо.


 
Dimka Maslov ©   (2010-02-03 17:56) [10]

А могли бы этот метод объявить абстрактным и при его неперекрытии в потомках генерировалось бы исключение типа "абстракт эррор"


 
tesseract ©   (2010-02-03 22:06) [11]


> при его неперекрытии в потомках генерировалось бы исключение
> типа "абстракт эррор"


Что сильно бы радовало всех его потомков :-) А то завели моду всякие XML датасеты без поиска делать.


 
xayam ©   (2010-02-03 22:10) [12]


> tesseract ©   (03.02.10 22:06) [11]
> Что сильно бы радовало всех его потомков :-) А то завели
> моду всякие XML датасеты без поиска делать.

заглушки еще никто не отменял. Хотя я согласен: xml-датасет должен быть с поиском! :)



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

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.185 c
4-1231416440
kolj
2009-01-08 15:07
2010.08.27
Стиль Windows Xp для нарисованой кнопки на Caption bar ?


2-1270715878
Дмитрий Жуков
2010-04-08 12:37
2010.08.27
"Строки"


15-1268204901
DOOM
2010-03-10 10:08
2010.08.27
что можно узнать по ip-адресу?


2-1267686761
cyber-pilot
2010-03-04 10:12
2010.08.27
Скроллеры в мемо


2-1272548272
Ardent
2010-04-29 17:37
2010.08.27
StringGrid красим ячейки мышкой