有没有办法直接在erl中使用记录?不管我怎么尝试,它总是说找不到记录。我正在尝试进行 mnesia 交易,如果没有我的记录,我就无法走得太远。非常感谢任何帮助 - 谢谢!

有帮助吗?

解决方案

是的,使用help()并在外壳中找到这些命令。

rd(R,D)    -- define a record
rf()       -- remove all record information
rf(R)      -- remove record information about R
rl()       -- display all record information
rl(R)      -- display record information about R
rp(Term)   -- display Term using the shell's record information
rr(File)   -- read record information from File (wildcards allowed)
rr(F,R)    -- read selected record information from file(s)
rr(F,R,O)  -- read selected record information with options

这些是外壳中巧妙的黑客攻击,它们允许您在编译时加载模块中使用的记录定义。使用RR命令从模块加载它。

请记住,这些仅适用于交互式外壳。

其他提示

你是什​​么意思?在 shell 中,那就是 Christian 写的那样。如果您的意思是在模块中,那么您仍然必须先定义记录,然后才能使用它们。请参阅 erlang 文档,在线: http://erlang.org/doc/, ,了解如何执行此操作的说明。它们只是编译时构造,因此它们并不存在。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top