|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Объясните поведение
Имеем код:
Код:
TItem = class (TObject) private fName:string; fID:integer; public Property Name:string read fName write fName; Property ID:integer read fID write fID; end; TGroup = class (TObjectList) // Реализован список объектов типа TItem Procedure AppendItem(aName:string; aID:integer);// создает новый элемент списка end; ... var l1,l2:TGroup; begin l1:=TGroup.create; l1.AppendItem('qwe1',1); l1.AppendItem('qwe2',2); l1.AppendItem('qwe3',3); l2:=TGroup.Create; l2.AppendItem('qaz1',101); l2.Add(l1[0]); ... l1.delete(0); Если string поменять на ShortString, то Name не обнуляется. Хотелось-бы понять почему так происходит и что делать с уже написанным кодом. |