English 中文(简体)
Per在Perl做什么?
原标题:What does the -> arrow do in Perl?
  • 时间:2011-02-06 12:30:19
  •  标签:
  • perl

我在守则中看到<代码>->,我并不确切知道这意味着什么。 例如:

@top_links = @{$m->links};

这一行文是什么? 而且,我可以在哪里阅读?

问题回答

See The ArrowOperationtor in perlop:

-> 是固定参照的操作者,如同C和C++一样。 如果右侧是[...],{......},或(......) subscript,则左边必须不是硬性或象征性地提及一个阵列、一个海面或一个小路。 (从技术上讲,如果用阵列或暗指进行转让,则能够持有硬参照的所在地点。) 见,perlreftut perlref

否则,右侧就是一个方法名称或包含方法名称或非例行参照的简单缩略变量,左边必须成为物体(无记名)或类别名称(即包装名称)。 见perlobj

总的来说,->hints at de reference. 这一辛迪加来自C。

举例来说,它是指从<代码>$/code>的标本中点名的打电话方法。 http://www.onyxneon.com/books/modern_perl/“rel=“nofollow noretinger”>Modern Perl 。 Pieces of perlsub,perlfaq7, ,

一般参考文件 Stack Overflow;这是一个经常性议题。

www.un.org/Depts/DGACM/index_french.htm 部分是参考——这意味着<代码>m->links 是个阵列的参比<>>>,因此,该操作者将其引向直接阵列,然后抄到@top_links

Camel Book是了解参考资料的一个良好地方,或perlref

<代码>-> 箭牌操作者为标注,此处指<代码>links member of the $m Object。 同样,后来的Camel Book各章也详细叙述了针对Perl的物体支持。 See perlobj section of the Perl documentation also.

单枪管操作者有另一种用途:

班级和班级;

但它与你的法典样本完全不同。 仅将其列入标题中,说明问题是否完整。





相关问题
Why does my chdir to a filehandle not work in Perl?

When I try a "chdir" with a filehandle as argument, "chdir" returns 0 and a pwd returns still the same directory. Should that be so? I tried this, because in the documentation to chdir I found: "...

How do I use GetOptions to get the default argument?

I ve read the doc for GetOptions but I can t seem to find what I need... (maybe I am blind) What I want to do is to parse command line like this myperlscript.pl -mode [sth] [inputfile] I can use ...

Object-Oriented Perl constructor syntax and named parameters

I m a little confused about what is going on in Perl constructors. I found these two examples perldoc perlbot. package Foo; #In Perl, the constructor is just a subroutine called new. sub new { #I ...

Where can I find object-oriented Perl tutorials? [closed]

A Google search yields a number of results - but which ones are the best? The Perl site appears to contain two - perlboot and perltoot. I m reading these now, but what else is out there? Note: I ve ...