我
我爱PASCAL
Unregistered / Unconfirmed
GUEST, unregistred user!
经常有写以下代码的情况,但不够紧凑,要改的话要么用goto,要么编一个过程;
用goto又不合结构化精神,编一个过程又麻烦又不直观,不改吧又比较冗余:
begin
...
if xx then
begin
do_last_thing;
.....
end
...
if yy then
begin
do_last_thing;
.....
end
...
end;
begin
do_last_thing;
.....
end;
改为以下:
try
...
if xx then abort;
...
if yy then abort;
...
finally
do_last_thing;
.....
end;
用goto又不合结构化精神,编一个过程又麻烦又不直观,不改吧又比较冗余:
begin
...
if xx then
begin
do_last_thing;
.....
end
...
if yy then
begin
do_last_thing;
.....
end
...
end;
begin
do_last_thing;
.....
end;
改为以下:
try
...
if xx then abort;
...
if yy then abort;
...
finally
do_last_thing;
.....
end;