Erlang - 標頭檔案



標頭檔案就像任何其他程式語言中的包含檔案。它用於將模組拆分為不同的檔案,然後在單獨的程式中訪問這些標頭檔案。為了瞭解標頭檔案的作用,讓我們看看我們之前關於記錄的一個例子。

首先,我們建立一個名為 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}
廣告

© . All rights reserved.