关于 Cond
当我们需要编写分支代码时,可以使用 cond/1:
cond do
x > 10 -> :this_might_be_the_way
y < 7 -> :or_that_might_be_the_way
true -> :this_is_the_default_way
end
cond 会沿着第一个求值为 true 的路径执行。至少要有一个子句求值为 true,否则会引发运行时错误。
cond 通常用于有两个以上逻辑分支,且每个分支的条件基于不同变量的情况。如果所有条件都基于相同的变量,用 case 更合适。如果只有两个逻辑分支,则改用 if。