類型轉換我嘗試做的程序列表中這樣說:
問題與德爾福XE
type
TProc = procedure of object;
TMyClass=class
private
fList:Tlist;
function getItem(index:integer):TProc;
{....}
public
{....}
end;
implementation
{....}
function TMyClass.getItem(index: Integer): TProc;
begin
Result:= TProc(flist[index]);// <--- error is here!
end;
{....}
end.
,並得到錯誤:
E2089 Invalid typecast
我怎樣才能解決這個問題? 正如我所看到的,我只能通過一個屬性Proc:TProc;
製作假類並列出它。但我覺得這是一種糟糕的方式,不是嗎?
PS:項目必須與delphi-7兼容。
如果您希望代碼在D7中工作,您爲什麼使用XE?那會導致你的悲傷。 –