11
-export([consult/1,
         dump/2, 
         first/1, 
         for/3,
         is_prefix/2).

ドキュメントを読んでいて、上記の構文と混同しています。上記のリストの/1/2、はどういう意味ですか?/3

4

2 に答える 2

16

/1, /2, /3などは、関数の「アリティ」と呼ばれます。アリティは、その関数によって受け入れられる引数の数を意味します。

Erlangでは、名前は同じでアリティが異なる2つの関数は、2つの異なる関数であるため、それぞれ明示的にエクスポートされます。Erlangのドキュメントを引用すると次のようになります。

関数は、モジュール名、関数名、およびアリティによって一意に定義されます。

たとえば、2つの関数がある場合:

do_something() -> does_something().

do_something(SomeArg) -> some_something_else(SomeArg).

そして、あなたのモジュールの上部には、

-export([do_something/0]).

次に、引数がゼロのdo_somethingのみがエクスポートされます(つまり、システム内の他のモジュールからアクセスできます)。

于 2012-11-28T04:05:45.850 に答える
1

関数シグネチャです。

consult/1という名前の関数がconsult引数を受け入れることを意味します。関数が2 つの引数を受け入れることをdump/2意味します。dump

詳細については、ドキュメントを参照してください

于 2012-11-28T03:58:08.637 に答える