为什么我继续得到Oz编程中没有引入的变量?

时间:2015-05-16 01:20:25

标签: oz

我一直收到错误,variable MainMirror Not introduced. 我该如何解决这个问题?

fun {MainMirror Int}

    local Mirror in
        fun {Mirror Int Acc}
       if Int == 0 then Acc
       else
          Acc + {Mirror (Int div 10) (Acc mod 10)} end
        end
        {Mirror Int 0}
    end
end
{Browse {MainMirror 1234}}

1 个答案:

答案 0 :(得分:0)

您没有声明变量MainMirror。实际上,函数是OZ中的变量。您可以使用'declare'运算符或'local'声明MainMirror。

declare
fun {MainMirror Int}

local Mirror in
    fun {Mirror Int Acc}
   if Int == 0 then Acc
   else
      Acc + {Mirror (Int div 10) (Acc mod 10)} end
    end
    {Mirror Int 0}
end
end
{Browse {MainMirror 1234}}