одному классу
Tplayers = class(TObject)..
public
addLItem : array of lItem;
addPItem : array of pItem;
+------
нашёл в чём ошибка, только я не понимаю из-за чего она, выге у меня есть код
Код:
procedure addP(name:string);
SetLength(alllItem, 3);
item := lItem.Create();
item.level := 1;
item.name := 'pysical layer';
allLItem[0] := item;
item := lItem.Create();
item.level := 2;
item.name := 'system layer';
allLItem[1] := item;
item := lItem.Create();
item.level := 2;
item.name := 'pred system layer';
allLItem[2] := item;
SetLength(allPItem, 10);
itemP := pItem.Create();
itemP.layer :='system layer';
itemP.name := 'P protocol';
SetLength(addLItem, Length(addLItem)+1 );
item := lItem.Create();
SetLength(item.protocols, 0);
addLItem[Length(addLItem)-1] := item;
Если меняю длину у массивов что выше - всё нормально работает. Почему? item нельзя повторно использовать?