请懂Perl的人指点我一下
看小骆驼书第四版。第三章里面列表赋值那块内容的时候。
提到一句:
因为列表是在赋值运算开始之前建立的,所以在Perl里互换两个变量的值相当容易:
($fred, $barney) = ($barney, $fred);
对此我非常不解,列表在赋值运算开始前建立和这事有什么关系啊?怎么想也想不通到底为什么这样写就可以做到交换变量值了。
我以前只学过C语言,所以对此很不理解。从网上查,别人的文章里面也都是简单的重复文中这句话,至于为什么,没有人说。可能是我比较笨吧,始终想不明白。是Perl遇到这种语句时候内部用了中间变量吗?还是别的原理啊,麻烦懂行的大大为我答疑解惑,小弟不胜感激.
[解决办法]
first create the list of right at assignment symbol which is ($barney, $fred), it stored the old value