【发布时间】:2016-11-22 09:46:20
【问题描述】:
我正在使用 PascalScript innosetup 安装程序,但我看不到以下块的控制流向何处。
function Foo(): String;
begin
Result := 'foo';
RaiseException('...');
end;
procedure Test();
var
Z : String;
begin
Z := '';
try
Z := Foo();
except
Log(Z);
end
end;
我的安装程序似乎表明Z 正在使用Foo 函数的Result 进行设置。我对“大多数”编程语言中的异常的理解告诉我分配 Z := Foo() 不应该在出现异常的情况下发生。
Foo 函数引发时,Z 是否仍应分配给?
【问题讨论】:
-
@MartinPrikryl:你是对的。我手工混合示例和生产代码。我让它编译并运行。
标签: exception-handling inno-setup pascal pascalscript