У меня есть такая проблема: как я могу добавить список в один список? Я пытался так, но основной список всегда возвращает один список, и не понимаю, где я ошибаюсь.
Структура такая:
PCombArray = array of Integer;
PStatsRecord = record
Comb: PCombArray;
Freq: Integer;
end;
PStatsList = TList<PStatsRecord>;
TStatsList = TList<PStatsList>;
Где Comb - это поле, которое работает как первичный ключ. Но тут все ок. я определяю основной список как:
var
MainList: TStatsList;
MySubList: PStatsList;
и создайте его без проблем. Процедура работы для заполнения подсписка; например, я называю эту процедуру MakeSubList и назначаю MySubList список, который был создан, а затем добавляю его в основной список:
MainList := TList<PStatsList>.Create;
try
MainList.Clear;
for index := 1 to N do // generate N subList
begin
...
MySubList := MakeSubList(index); // contain correct sub list, no problem here
...
MainList.Add(MySubList); // add mysublist to mainlist
end;
writeln (mainList.count); // return 1, and not N-1 sublist
finally
MainList.Free;
end;
Спасибо, кто помогает мне понять, чтобы я мог решить это. Еще раз спасибо.