![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему у TString property Objects, а нет Pointers?
TStas © (2007-07-04 00:01:00)Ведь удобнее намного им было бы пользоваться, а так каждый раз надо класс писать. Был же какой-то резон, когда так написали?
Плохиш (2007-07-04 12:34:00) [1]
> Думкин © (04.07.07 11:36) [5]
0046E4BA E86961FAFF call TList.GetEnumerator
Хм, всё правильно, в TList храняться Pointer и его GetEnumerator возвращает Pointer. Стоит швырнуть в разработчиков тортом :-)
Desdechado (2007-07-04 11:45:00) [2]А я там вообще Integer'ы храню. Очень удобно для списков с внутренними идентификаторами.
Думкин (2007-07-04 11:36:00) [3]А вот есть
FList : TObjectList;
и надо пробежаться по нему.
function TBalls.isFull: boolean;
var Ball : Pointer;
begin
Result := true;
for Ball in FList do ....;
end;
катит. А
function TBalls.isFull: boolean;
var Ball : TObject;
begin
Result := true;
for Ball in FList do ....;
end;
не катит. :(
Плохиш (2007-07-04 11:29:00) [4]
> > при последующем использовании
> всё таки придётся преобразовывать. :)
В 80% случаев, при грамотной разработке, явного преобразования не потребуется :-)
Германн (2007-07-04 01:45:00) [5]
> И указатель на любой класс не делая никаких преобразований
> ни при засовывании, ни при последующем использовании...
Вот это - главное.
Но
> при последующем использовании
всё таки придётся преобразовывать. :)
Плохиш (2007-07-04 01:15:00) [6]
> Ведь удобнее намного им было бы пользоваться
В чём удобство? В постоянном приведении указателя к нужному типу, да ещё и надо запоминать тип данных, каторые соизволил туда засунуть...
A с помощью преобразования типa к TObject туда можно засунуть любой указатель. И указатель на любой класс не делая никаких преобразований ни при засовывании, ни при последующем использовании...
Германн (2007-07-04 01:06:00) [7]
> TStas © (04.07.07 00:01)
>
> Ведь удобнее намного им было бы пользоваться, а так каждый
> раз надо класс писать.
Из рекламы.
"- Не люблю кошек!
- Ты просто не умеешь их готовить!"
:)
Про приведение типов почитай.