17-05-2024, Saat: 12:36
Bunun için rahatlıkla record helper kullanabilirsiniz.
Sizin için bir tanesini record helper'a çevirdim; gereken diğerlerini siz çevirirsiniz:
İlgili sınıflarınızda TArray<TItem> olarak geçen kısmı; TItems olarak değiştirirseniz daha rahat bir kullanımınız olacaktır.
Sizin için bir tanesini record helper'a çevirdim; gereken diğerlerini siz çevirirsiniz:
TItems = TArray<TItem>;
TItemsHelper = record helper for TItems
public
function Add : TItem; overload;
procedure Add(const AItem : TItem); overload;
procedure Remove(const AItem : TItem);
end;
{ TItemsHelper }
function TItemsHelper.Add: TItem;
begin
Result := TItem.Create;
Add(Result);
end;
procedure TItemsHelper.Add(const AItem: TItem);
begin
SetLength(Self, Length(Self) + 1);
Self[High(Self)] := AItem;
end;
procedure TItemsHelper.Remove(const AItem: TItem);
var
AList : TList<TItem>;
begin
AList := TList<TItem>.Create(Self);
try
if AList.Contains(AItem) then
begin
AList.Remove(AItem);
AItem.Free;
end; // if AList.Contains(AItem) then
Self := AList.ToArray;
finally
if Assigned(AList) then
FreeAndNil(AList);
end; // try..finally
end;
İlgili sınıflarınızda TArray<TItem> olarak geçen kısmı; TItems olarak değiştirirseniz daha rahat bir kullanımınız olacaktır.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...

