如何编写将变量绑定到第二个的模式 此元组中的元素{< 0.206.0>,{rect,10,30}}?
即。导致的“代替模式的东西” 形状的值为{rect,10,30}。 模式= {< 0.206.0>,{rect,10,30}}
< 0.206.0>令我困惑的部分。
答案 0 :(得分:8)
这很简单......
{_, Shape} = {<0.206.0>, {rect, 10, 30}}.
但是,你不能从文字中创建一个进程id,所以上面的语法是错误的,但是在REPL中尝试这个......
1> {_, Shape} = {self(), {rect, 10, 30}}.
{<0.31.0>,{rect,10,30}}
2> Shape.
{rect,10,30}
答案 1 :(得分:4)
<0.206.0>
看起来像一个PID。无论哪种方式都是一回事,所以不要考虑它。
你可以根据你的情况做一些dsmith的建议,或者你可以这样做:
Shape = element(2, {<0.206.0>, {rect, 10, 30}}).
答案 2 :(得分:3)
仅供您进一步参考,您可以使用pid/0
功能“创建”特定的Pid:
1> Pid = pid(0,206,0).
<0.206.0>
2> {Pid, Shape} = {Pid, {rect, 10, 30}}.
{<0.206.0>,{rect,10,30}}