erlang(6) -- macro

慕嘉运
2023-12-01

erlang中的预处理类似C中的预处理:

 

包含:-include(File).
File是一个表示路径的字符串,其中可以含有$VAR表示的环境变量引用,可以是绝对路径,也可以是相对路径,相对路径的话,将从当前工作目录cwd,当前正在编译的文件所在的路径以及include选项指定的系列路径中依次按顺序寻找。

 

宏:-define(Const, Replacement). -define(Func(Var1,...,VarN), Replacement).
引用宏时使用?Const或?Func(Arg1,...,ArgN)的方式进行引用。
宏还可以使用如下方式进行定义:
erlc -Ddebug xxx.erl
c(xxx, {d, debug}).
宏定义中,把宏变为一个字符串(类似C语言中的#arg):??Arg

 

条件编译:-ifdef(Macro). -ifndef(Macro). -else. -endif.

 

 类似资料: