0

我想知道是否有更清晰的声明

if not attached foo then
    create foo
end
if attached foo as l_foo then
    l_foo.bark
end

作为

if not attached foo then
    create foo
    foo.bark
else
    foo.bark
end

会重复foo.bark,显然我想避免它......甚至最后一条语句也不会使用 void-safety 编译,因为 foo on else 可能是无效的......

4

1 回答 1

2

为避免代码重复和多次测试,可以使用以下代码:

l_foo := foo
if not attached l_foo then
    create l_foo
    foo := l_foo
end
l_foo.bark
于 2019-01-24T19:22:44.513 回答