chdir($g_var->{g_loc});
我發現這行在我正在使用的一些Perl代碼,我不知道->
是什麼意思。我的意思是我不能找到語法的含義。順便說一下,g_loc是文件夾的名稱。我在這裏錯過了什麼?Perl中的` - >`語法是什麼意思?
P.S.我只有4天轉換爲 perl。
chdir($g_var->{g_loc});
我發現這行在我正在使用的一些Perl代碼,我不知道->
是什麼意思。我的意思是我不能找到語法的含義。順便說一下,g_loc是文件夾的名稱。我在這裏錯過了什麼?Perl中的` - >`語法是什麼意思?
P.S.我只有4天轉換爲 perl。
->
被解除引用的參考。 $g_var
包含對%hash
(您可以使用$hash{key}
訪問的元素)的引用。
您可以找到有關perlreftut
和perlref
文檔中引用的詳細信息。還有關於列表列表(嵌套引用)的perllol
。
您可以打開使用perldoc perlreftut
文檔等
$g_var
是一個散列的引用。 指針僅僅是查找語法,定位「g_loc」哈希條目。
這就像$g_var{g_loc}
如果%g_var
是一個哈希,而不是一個哈希REF相同。
這是,如果你搜索perlop (perl operators)上http://perldoc.perl.org你會得到什麼。 Perldoc的on-version版本已經過重大改進,並且坦率地說,從所有參考文檔我都喜歡這個最好的版本。
「
->
」 是一箇中綴引用操作,就像它是在C和C++。如果右側或者是[...]
,{...}
或(...)
下標,則左側必須是硬的或符號引用到一個數組,散列,或分別的子程序。 (或者從技術上講,如果它是一個陣列或哈希引用被用於分配,則該位置能夠保存一個硬引用。)請參閱perlreftut和perlref。否則,右側是一個方法名稱或一個包含方法名稱或子例程引用的簡單標量變量,左側必須是對象(有福的引用)或類名(也就是說,一個包名稱)。見perlobj。
恭喜!你只是發現了我最厭惡Perl的特性:引用。 [perl.org有一個很好的教程](http://perldoc.perl.org/perlreftut.html),我希望可以幫助你。 – sarnold
關於其他含義,請參閱[什麼是 - >運算符在Perl中執行?](http://stackoverflow.com/questions/8150845/what-does-operator-do-in-perl)從昨天開始[ - >箭頭在Perl中做?](http://stackoverflow.com/questions/4913280/what-does-the-arrow-do-in-perl)。 – daxim