Erlang - Başlık Dosyaları

Başlık dosyaları, diğer programlama dillerindeki içerme dosyaları gibidir. Modülleri farklı dosyalara bölmek ve ardından bu başlık dosyalarına ayrı programlara erişmek için kullanışlıdır. Başlık dosyalarını çalışırken görmek için, daha önceki kayıt örneklerimizden birine bakalım.

Önce adlı bir dosya oluşturalım user.hrl ve aşağıdaki kodu ekleyin -

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

Şimdi ana program dosyamıza aşağıdaki kodu ekleyelim -

Misal

-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]).

Yukarıdaki programdan da görebileceğiniz gibi, aslında sadece otomatik olarak ekleyen user.hrl dosyasını ekliyoruz. –record içindeki kod.

Yukarıdaki programı çalıştırırsanız, aşağıdaki çıktıyı alırsınız.

Çıktı

1
“John”

Aynı şeyi makrolarla da yapabilirsiniz, makroyu başlık dosyası içinde tanımlayabilir ve ana dosyada ona referans verebilirsiniz. Bunun bir örneğini görelim -

Önce adlı bir dosya oluşturalım user.hrl ve aşağıdaki kodu ekleyin -

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

Şimdi ana program dosyamıza aşağıdaki kodu ekleyelim -

Misal

-module(helloworld). 
-export([start/0]). 
-include("user.hrl"). 

start() -> 
   io:fwrite("~w",[?macro1(1,2)]).

Yukarıdaki programı çalıştırırsanız, aşağıdaki çıktıyı alırsınız -

Çıktı

{3}