次のような Load メソッドを公開する TbsManager クラスがあります。
TbsManager = class(TComponent)
private
FItems: TbsItems;
public
procedure Load(Item: TbsItem);
TbsItem は TCollectionItem であり、TbsItems によって所有されています。
TbsItem = class(TCollectionItem)
TbsItems = class(TCollection)
TbsItems に Load メソッド (onwer の所有者クラスにある) を持たせたいのですが、これが私がそれを達成した方法です:
procedure TbsItem.Load;
begin
TbsManager(TbsItems(GetOwner).Owner).Load(Self);
end;
私がそれを正しくやったかどうかはわかりません。安全なコードですか?