![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте, не так хорошо знаю делфи, возможно туплю, возможно нужно чтото знать:
есть код Код:
pItem = class name : string; layer: string; end; lItem = class name : string; protocols : array of pItem; end; public addLItem : array of lItem; addPItem : array of pItem; procedure addP(name:string); ... SetLength(addLItem, Length(addLItem)+1 ); item := lItem.Create(); SetLength(item.protocols, 0); addLItem[Length(addLItem)-1] := item; for i:= 0 to Length(addLItem)-1 do begin ShowMessage( '1='+IntToStr(Length( addLItem[i].protocols))); end; procedure draw( ); for i:= 0 to Length(addLItem)-1 do begin ShowMessage( '2=' + IntToStr(Length( addLItem[i].protocols))); end; Код:
lp.addP('P'); lp.draw; 1=0 2=106 Почему во второй функции подмассив стал таким, ссылка потерялась? |