相关疑难解决方法(0)

在ReturnData中``在Delphi中是什么意思?

在浏览System.Zip(Delphi XE2)以查看其工作原理时,我发现了这个功能:

procedure VerifyWrite(Stream: TStream; var Buffer; Count: Integer);
begin
  if Stream.Write(Buffer, Count) <> Count then
    raise EZipException.CreateRes(@SZipErrorWrite) at ReturnAddress;
end;
Run Code Online (Sandbox Code Playgroud)

at ReturnAddress这是让我困惑的部分.

我不知道这at是一个有效的关键字(语法高亮显示器似乎也没有识别它).

根据IDE声明它System.ReturnAddress,但我只能在(asm)代码中的某处找到它声明为标签procedure _HandleAnyException;.但系统单元充满了对它的引用.

所以我想知道的是:

  1. 什么是ReturnAddress
  2. 到底是Raise Exception.Create ... at ReturnAddress做什么的?

如果你可以给出一个真实世界的例子,说明这将是一个有用的结构,或者你可以建议不要使用它.

delphi exception

25
推荐指数
2
解决办法
1822
查看次数

标签 统计

delphi ×1

exception ×1