我是Erlang语法的新手并且正在努力解决这个问题
我可以这样做并编译
throw(Reason)
类型为throw/1
我希望能够做到这一点:
%% I have seen this code in sample examples.
?THROW("Couldn't start process: ~p. ~n", [Reason])
我认为没有throw/2.
然后我如何定义上面的宏?
答案 0 :(得分:2)
?THROW是一个宏。它应该在某处定义为:
-define(THROW(Format,Params),throw(io_lib:format(Format,Params))).
在此定义中,对io_lib:format(Format,Params)
的调用返回单个字符串,该字符串由函数throw用作Reason。