Цитата(Rennigth @ 7.4.2008, 17:18 ) | | Два. THashedStringList еще |
THashedStringList - потомок уже TStringList
Цитата(MetalFan @ 7.4.2008, 21:54 ) | | да на самом деле куча наследников.TMemoStrings, TCustomBoxStrings etc... |
ну это уже не Delphi6 в базовой комплектации (которой пользуюсь)
вот я и говорю, допустим у нас массив элементов TMemoStrings, TCustomBoxStrings, THashedStringList, TStringList, а чтобы с ними иногда универсально пообщаться называем их TStrings'ами пример (бессмысленный, но если надо - можно и разумный изобразить):
| Код | FList.Add(TStringList.Create); FList.Add(THashedStringList.Create); FList.Add(TCustomBoxStrings.Create); FList.Add(TMemoStrings.Create);
for i := 0 to FList.Count - 1 do begin ShowMessage(TStrings(FList[i]).Text); end;
|
Добавлено через 2 минуты и 10 секунд
Цитата(MetalFan @ 7.4.2008, 16:43 ) | | согласен с Alexeis. зачем без необходимости использовать переменные класса предка. |
ООП все-таки. В бизнес-логике такое часто приходится изображать. |