[問題] 參照的一些疑問

看板Perl作者 (Art of Life)時間18年前 (2007/09/20 13:24), 編輯推噓3(300)
留言3則, 2人參與, 最新討論串1/3 (看更多)
我寫了一小段script..不過這幾種用法我實在想不出他們的差異在那... 所以想請版上高手們解惑(這問題卡著真的很難過...XD)... $a="aa bb cc dd"; $s=@{[split/ /,$a]}[1]; print $s ; ======這樣能print 出$s的結果===== bb =================縮成這樣======== $a="aa bb cc dd"; print @{[split/ /,$a]}[1]; ======這樣也能print出結果======== bb =======改成這樣================== $a="aa bb cc dd"; $s=((split/ /,$a))[1]; print $s ; =====這樣也是ok的================ bb =====但是如果縮成這樣============ $a="aa bb cc dd"; print ((split/ /,$a))[1]; =====這樣就print不出東西========= syntax error at noname.pl line 11, near ")[" Execution of noname.pl aborted due to compilation errors. 問題在這...用小括號所做出來的和用中括號做ref,大括號解ref 這兩者的意義有什麼不同嗎??? 困惑我蠻久的...但是一直都想不出這兩者的差異.... 請高手們為小弟解惑....十分感激!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.130.20

09/20 13:52, , 1F
print (((split/ /,$a))[1]); Interpreter Parse有順序
09/20 13:52, 1F

09/20 14:17, , 2F
可以麻煩前輩再講清楚點嗎...對不起...orz...
09/20 14:17, 2F

09/20 14:20, , 3F
另外想請教這樣的情況下小括號是不是有特別的意思?
09/20 14:20, 3F
文章代碼(AID): #16yWG99c (Perl)
文章代碼(AID): #16yWG99c (Perl)