Chinaunix

标题: ':=' 这是什么用法?有人知道么? [打印本页]

作者: cu_little_bird    时间: 2011-12-05 16:32
标题: ':=' 这是什么用法?有人知道么?
  1. chomp(my $number2 :=<STDIN>);
复制代码

作者: zhlong8    时间: 2011-12-05 17:04
typo
作者: cu_little_bird    时间: 2011-12-05 17:14
typo
zhlong8 发表于 2011-12-05 17:04



    但是这样perl不会报错,感觉没什么影响
作者: Monox    时间: 2011-12-06 13:58
回复 3# cu_little_bird
my 的完整形式是这样的:
  1. my TYPE EXPR : ATTRS
复制代码

其中,TYPE 和 ATTRS 都可以省略,ATTRS 省略的时候 : 也可以省略。
  1. my $something := $otherthing;
复制代码
其实等价于
  1. my $something : = $otherthing;
复制代码
不过,为了能够把 := 用于新的用途,从大概 Perl 5.14 版本(具体是不是这个版本我不知道了)开始,不再能够省略掉 : 与 = 之间的空格。这就是上面那种写法不会报错的原因,不过,仅限于旧的 Perl 版本。
作者: cu_little_bird    时间: 2011-12-06 14:04
回复 4# Monox


    厉害,终于得到答案了
我的perl版本很老 5.10的




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2