-export([start/0]).
start() ->
for(1,3,test).%%改成for(1,3,test()).最终结果还是报错
for(Max, Max, Func) -> [Func()];
for(I, Max, Func) -> [Func() | for(I+1, Max, Func)].
test() ->
io:format(“just for test!”).
上面的代码执行后的结果为:
54> c(testspawn,[debug_info]).
testspawn.erl:23: Warning: function test/0 is unused
{ok,testspawn}
55> testspawn:start().
** exception error: bad function test
in function testspawn:for/3 (testspawn.erl, line 21)
加上-export([start/0,test/0]).或改成for(1,3,test()).之后Warning消失,但最终结果仍然不变。
加以修改后的结果为:
-export([start/0]).
start() ->
for(1,3,fun() ->test() end).
for(Max, Max, Func) -> [Func()];
for(I, Max, Func) -> [Func() | for(I+1, Max, Func)].
test() ->
io:format(“just for test!”).
运行后:
56> c(testspawn,[debug_info]).
{ok,testspawn}
57> testspaw