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

Erlang ヘッダーファイル

ヘッダーファイルは、他のプログラミング言語のインクルードファイルに似ています。モジュールを異なるファイルに分割し、それらのヘッダーファイルを異なるプログラムにアクセスする方法は非常に有用です。実行中のヘッダーファイルを確認するために、前のレコード例を見てみましょう。

まず、"user.hrl"という名前のファイルを作成します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"という名前のファイルを作成しますuser.hrlのファイルに以下のコードを追加します-

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

現在、主プログラムファイルに以下のコードを追加します-

オンラインサンプル

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

上記のプログラムを実行すると、以下の出力が得られます-

出力結果

{3}