Erlang-ヘッダーファイル

ヘッダーファイルは、他のプログラミング言語のインクルードファイルに似ています。モジュールを異なるファイルに分割し、これらのヘッダーファイルにアクセスして別々のプログラムにする場合に便利です。ヘッダーファイルの動作を確認するために、以前のレコードの例の1つを見てみましょう。

まず、というファイルを作成しましょう。 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}