+ -
当前位置:首页 → 问答吧 → Intermediate perl中的问题

Intermediate perl中的问题

时间:2011-03-10

来源:互联网

  1. #!/usr/bin/perl-w
  2. $Data::Dumper::Purity=1;
  3. use Data::Dumper;
  4. my @data1=qw(one won);
  5. my @data2=qw(two too to);
  6. push @data2,\@data1;
  7. push @data1,\@data2;
  8. print Dumper(\@data1,\@data2);
复制代码
输出结果为:
$VAR1 = [
          'one',
          'won',
          [
            'two',
            'too',
            'to',
            []
          ]
        ];
$VAR1->[2][3] = $VAR1;
$VAR2 = $VAR1->[2];
这种写法很奇怪,数组的解引用中有一个是自己,这样做有什么好处?
为什么$VAR1

作者: fucj   发布时间: 2011-03-10

Data::Dumper 有个特性就是输出能直接 eval 得到原来的数据结构,你也可以设置显示成自引用的样式,不过就不能 eval 了。这里只是个示例没什么用,不过自引用也不是很少见吧?ring、文件系统等都有啊,不过 perl 中要用 weaken

作者: zhlong8   发布时间: 2011-03-10