第1行中,定义了变量X(它在进入函数时被绑定)。第2行中,使用了X,定义了Y(首次出现)。第3行中,使用了X和Y,然后在第4行中使用了Y。
变量A在其被定义的case原语之后仍然有效。从if、case或receive原语中导出变量时应注意一些规则:
例如以下代码:
脚注
附录A给出了Erlang的形式语法。 |
[2] | 许多人认为破坏性赋值会导致难以理解和易错的不清晰的程序。 |
假设所有函数调用都结束。 |
[5] | 即是说函数的值与调用上下文无关。 |
好吧,几乎是——想想看factorial(-1)? |
[8] | 如果不知道选哪个,选最漂亮的那个! |