English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

头文件 Erlang

I file di intestazione sono simili a quelli di qualsiasi altro linguaggio di programmazione. Dividere i moduli in diversi file e poi accedere a questi file di intestazione in diversi programmi è un metodo molto utile. Per vedere i file di intestazione in esecuzione, guardiamo un esempio di record precedente.

首先创建一个名为user.hrl的文件,并添加以下代码-

-record(person, {name = "", id}).

现在在我们的主程序文件中,添加以下代码-

示例在线

-module(helloworld). 
-export([start/0]). 
-include("user.hrl"). 
start() -> 
   P = #person{name = "John",id = 1}, 
   io:fwrite("~p~n",[P#person.id]), 
   io:fwrite("~p~n",[P#person.name]).

正如您在上面的程序中看到的,我们实际上只是包含了 user.hrl 文件,该文件会自动地在其中插入-record 代码。

如果执行上述程序,将得到以下输出。

1
“John”

您也可以对宏执行相同的操作,可以在头文件中定义宏并在主文件中引用它。让我们看一个实例-

首先创建一个名为user.hrl的文件,并添加以下代码-

-define(macro1(X,Y),{X+Y}).

现在在我们的主程序文件中,添加以下代码-

示例在线

-module(helloworld). 
-export([start/0]). 
-include("user.hrl"). 
start() -> 
   io:fwrite("~w",[?macro1(1,2)]).

如果执行上述程序,将获得以下输出-

结果输出

{3}