Erlang:宏、模块升级、ETS与分布式编程全解析
1. 宏(Macros)
宏是 Erlang 中一项强大的功能,由 Erlang 预处理器(epp)实现,在源代码编译成 BEAM 代码之前被调用。宏可以是常量,也可以带参数。
- 常量宏定义 :
-define(ANSWER,42).
-define(DOUBLE,2*).
- 带参数宏定义 :
-define(TWICE(F,X),F(F(X))).
通常,宏名使用大写字母,但这只是一种约定。宏定义可以是任何合法的 Erlang 标记序列,不一定是有意义的表达式。调用宏时,需在宏名前加 ? 字符,例如:
test() -> ?TWICE(?DOUBLE,?ANSWER).
若想查看宏定义的效果,可在 shell 中使用 'P' 标志进行编译:
c(<filename>,['P']).
这样会生成一个 filename.P 文件,其中
超级会员免费看
订阅专栏 解锁全文
386

被折叠的 条评论
为什么被折叠?



