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 回答