如何在Erlang中的多个erl之间共享记录?

The*_*uad 5 erlang record erl

我想在我拥有的每个erl文件中使用-record.我知道我可以在每个文件中单独重复记录,但这真的很难看.

有什么建议吗?

PS:温柔;-)我是Erlang的新手.

Dav*_*don 10

将记录定义放在标题(.hrl)文件中.例如,animal.hrl可能看起来像:

-record(animal, {name, legs=4, eyes=2}).
Run Code Online (Sandbox Code Playgroud)

然后在.erl文件中,您可以包含.hrl文件,如下所示:

-include_lib("animal.hrl").
Run Code Online (Sandbox Code Playgroud)
  • 我建议读这个.
  • 请注意,.hrl文件应该放在您的src目录中,除非在您的应用程序之外需要它 - 在这种情况下,您应该将它放在一个名为的目录中include.