【发布时间】:2020-11-10 16:29:31
【问题描述】:
我有一个子对象只实现了接口的一部分:
IMyTest = interface
procedure P1;
procedure P2;
end;
TMyTestP2Impl = class
procedure P2;
end;
TMyTest = class(TInterfacedPersistent, IMyTest)
private
FMyTestP2Impl : TMyTestP2Impl;
public
constructor Create();
destructor Destroy(); override;
procedure P1;
procedure P2;
end;
所以我必须写TMyTest.P2如下:
procedure TMyTest.P2;
begin
FMyTestP2Impl.P2();
end;
我想知道是否存在将TMyTest.P2 映射到FMyTestP2Impl.P2 的有效语法,而无需编写TMyTest.P2 的实现。我的意思是这样的:
TMyTest = class(TInterfacedPersistent, IMyTest)
private
FMyTestP2Impl : TMyTestP2Impl;
public
constructor Create();
destructor Destroy(); override;
procedure P1;
procedure P2 = FMyTestP2Impl.P2;
end;
【问题讨论】: