Как удалить одно значение из динамического массива?
type
TArrayString =
array
of
string
;
procedure
DeleteArrayIndex(
var
X: TArrayString;
Index
: Integer);
begin
if
Index
> High(X)
then
Exit;
if
Index
< Low(X)
then
Exit;
if
Index
= High(X)
then
begin
SetLength(X, Length(X) -
1
);
Exit;
end
;
Finalize(X[
Index
]);
System.Move(X[
Index
+
1
], X[
Index
],
(Length(X) -
Index
-
1
) * SizeOf(
string
) +
1
);
SetLength(X, Length(X) -
1
);
end
;
// Example : Delete the second item from array a
// Beispiel : Losche das 2. Element vom array a
procedure
TForm1.Button2Click(Sender: TObject);
var
a: TArrayString;
begin
DeleteArrayIndex(a,
2
);
end
;
Взято с сайта
http://www.swissdelphicenter.ch/en/tipsindex.php
Современные офисы класса B -
аренда офисов
.