2016-07-27 1 views
1

レコードで再生していただけで、レコードで動作する関数を作成しようとしました。問題は、私のモジュールファイルにレコード定義を読み込む方法だと思います。関数でレコードを使用する

reocords.hrlファイル:

% Modeling a todo list 
-record(todo, {status=reminder, who=joe, text}). 

そしてuse_records.erlファイル:

%% Use the records defined in "records.hrl" 
-module(use_records). 
-export([todo_to_tuple/1]). 

rr("records.hrl"). 
todo_to_tuple(#todo{who=W, text=T} = R) -> {W, T}. 

私はそれをコンパイルしようとすると、私が手:

24> c(use_records). 
use_records.erl:5: variable 'T' is unbound 
use_records.erl:5: variable 'W' is unbound 
use_records.erl:5: record todo undefined 
use_records.erl:5: Warning: variable 'R' is unused 
error 

エラーが同じです私がrr("records.hrl")行を削除した場合。だから私は本当の問題は、レコードの定義を読み取ることができると思いますか?助けてください!

答えて

4

rr/1が使用されているのは、シェル内のレコード定義のみです。

-include("records.hrl") 
:あなたのコードを使用してレコード定義を含めるために

関連する問題