标题中的问题是,我如何创建一个不提供返回值的函数,但可以执行多个指令?
例如:
declare
fun {doStuff Tree}
case Tree
of bTree(T left:leaf right:leaf) then {Browse Tree}
[] bTree (T left:T1 right:T2) then {doStuff T1} {doStuff T2}
end
在这种情况下,我想递归调用函数doStuff
,但我不能,因为它设置为返回最后一条指令,我只是得到一个错误。但当我删除{doStuff T2}
时,它会编译。
答案 0 :(得分:0)
此类功能在Oz中称为“程序”。要定义过程,请使用“proc”关键字:
proc {DoStuff Tree}
...
{DoStuff T1} {DoStuff T2\
end
注意:函数和过程的名称必须以大写字母开头。