Erlang 无法调用正确的函数?
我有一个函数,它查找这个特定的模式并返回okErlang 无法调用正确的函数?,erlang,Erlang,我有一个函数,它查找这个特定的模式并返回ok id_finder([{id, _, []}|_], _) -> ok; 我这样调用这个函数: id_finder([{id, whatever, []}], whatever). 但我得到了异常错误 **异常错误:没有匹配的函数子句 为什么我会出现这个错误,在这种情况下函数不应该返回“ok”吗? 我一直在盲目地研究这个函数,但我不明白为什么erlang不将我的函数与正确的调用匹配?是的,调用与子句匹配。您确定您实际上正在调用此函数吗(例
id_finder([{id, _, []}|_], _) -> ok;
我这样调用这个函数:
id_finder([{id, whatever, []}], whatever).
但我得到了异常错误
**异常错误:没有匹配的函数子句
为什么我会出现这个错误,在这种情况下函数不应该返回“ok”吗?
我一直在盲目地研究这个函数,但我不明白为什么erlang不将我的函数与正确的调用匹配?是的,调用与子句匹配。您确定您实际上正在调用此函数吗(例如,可能您在添加子句后没有重新编译,或者模块名称错误)?或者没有将其导出。谢谢您的帮助,问题只是一个简单的错误。函数的位置不正确。