我想记住m4
宏调用的参数,以便进一步使用,即使用另一个宏符号作为一种变量,我可以在以后回忆起这个参数。
但是,我的m4
会话并未按预期进行:
define(`A',define(`B',$1))
⇒
A(17)
⇒
B
⇒
defn(`B')
⇒$1
如果B
的最后一次调用是A
,我只想将A(17)
的值解析为17。怎么做到这一点?
答案 0 :(得分:1)
刚刚找到它:
define(`A',`define(B,$1)')
会做到这一点。通过引用,定义的解决方案被推迟到实际调用“A'。