摘要: 据小道可靠消息,在Erlang中是没有循环的,要使用循环可以用递归来代替!先上代码:-module(recursion2).-compile(export_all).sum(1) -> 1;sum(N) -> N + sum(N - 1). 这就是递归,函数自己调用自己。但这就是传说中可以通过编译优化得“和循环一样快,没有额外开销”的尾递归么? 我们来做一个实验:-module(recursion2).-compile(export_all).t1(N) -> Result = sum(N), io:format("~p~n", [Result]), er 阅读全文
posted @ 2014-02-26 14:57 hongmao 阅读(1793) 评论(1) 推荐(0) 编辑