hi,
meine frage ist, wann ich ein item aus einem array löschen sollte, folgendes beispiel(MeinArray ist das Array das den socket etc speichert):
Delphi-Quellcode:
procedure TServerSocket.OnClientDisconnect(Sender: TObject; ASocket: TCustomWinSocket);
begin
// hier wird in einer schleife nach dem item im array gesucht das dem handle von ASocket entspricht und dementsprechend aus dem array entfernt
end;
...
procedure IrgendeineProzedur;
var
i: integer;
begin
for i := High(MeinArray)
downto Low(MeinArray)
do
begin
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
// löst im fehlerfall OnClientDisconnect aus
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
// hier würde der index dann nichtmehr stimmen
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
MeinArray[i].Socket.SendText('
irgendwas' + #13#10);
end;
end;
meine frage ist nun... muss ich bei jeder einzelnen zeile wo ich was sende prüfen ob das item im array noch existiert? das kann es ja nich sein oder?