9

次のように定義された関数がある「Pragmatic Programming Erlang」を調べています。

split("\r\n\r\n" ++ T, L) -> {reverse(L), T};
split([H|T], L) -> split(T, [H|L]);
split([], _) -> more.

私が興味を持っているのは最初の一致です。つまり"\r\n\r\n" ++ T、そのようなパターンと同様のパターンの間にパフォーマンスの違いはあります[13,10,13,10|T]か? それとも同等ですか?

それは非常に単純な質問であり、(おそらく)自分で確認できることはわかっていますが、違いがある場合は、その理由を知りたいです。

ありがとう!

4

1 に答える 1

8

"\r\n\r\n" ++ Tの構文糖衣です[13,10,13,10|T]。同じように実行する必要があります。そうでない場合は、何か問題があります;-)

于 2011-11-28T17:52:52.103 に答える