结果关键字是否会自动识别为返回值/对象?
使用的正确语法是什么?
不幸的是,我无法从文档和在线的各种示例中找到明确的指示。
答案 0 :(得分:2)
关键字结果只是一个具有保留名称的本地变量,能够在功能体中以及相应的后置条件中使用它。退出要素之前附加到结果的最后一个值是此功能返回的值。这是一个例子:
foo: SOMETHING
do
Result := bar
if Result.whatever then
qux (Result)
else
something_else := Result
Result := some_other_value
end
ensure
valid_result: Result.is_valid
end
有一个有效性规则规定结果只能在返回值的功能中使用,因为它在没有返回任何内容的过程中没有意义。