奥兹的“无所事事”操作员

时间:2014-03-21 13:09:20

标签: oz

作为学习课程的一部分,我正在制作一个程序,将列表作为参数,然后对其内容进行操作。它是这样的:

proc {myProc A B}
    case B of H|T then
        %do something
        {myProc A T}
    end
end

然而,当我尝试执行它时,我在B是安培列表(即nil)时遇到了失败。那是为什么?

如果B为零,我该怎么办?据我所知,添加空else子句将导致编译错误。

1 个答案:

答案 0 :(得分:1)

你需要为nil添加一个案例:

proc {myProc A B}
  case B
  of H|T then
    %do something
    {myProc A T}
  [] nil then
    skip
  end
end