erlang中的宏

宏的编写格式为

-define(Constant,Replacement). 

当一个模块中碰到一个形式为?Constant时,就会展开这个宏,例如

-define(macrol(X,Y),{a,X,Y}).

foo(A) ->

  ?macrol(A+10,b).

等价于

foo(A) -》

  {a,A+10,b}.

 

以及三个预定宏提供了当前模块的信息

?FILE: 等价于当前的文件名。

?MODULE: 等价于当前的模块名。

?LINE:等价于当前的行号。

posted @ 2020-03-26 15:12  ye_jing  阅读(726)  评论(0)    收藏  举报