ミ,,゚Д゚彡フサギコのフサフサDelphi談話室�B
■ このスレッドは過去ログ倉庫に格納されています
0684デフォルトの名無しさん
NGNG1) データ本体(実体)があり、
2) それを参照しているリストは複数個ある (List1, List2, List3, ...)
3) あるリスト List からデータを削除した場合に、他のリストの
該当データも削除又は無効にしたい
4) ところが、これを以下のように書くと、大変時間がかかってしまう
procedure Remove(Data:TData);
begin
List1.Remove(Data);
List2.Remove(Data);
List3.Remove(Data);
....
ListN.Remove(Data);
Data.Free;
end;
↑のようにすると、データ数が多くなった場合に処理時間が
かかってしょうがないのです
最初は以下のようにやっていたのですが、うまく行きません
procedure Remove(Data:TData);
begin
Data.Free;
Data := nil;
List1.Pack;
List2.Pack;
List3.Pack;
...
ListN.Pack;
end;
■ このスレッドは過去ログ倉庫に格納されています