7
爲什麼Perl會在下面的代碼片段中引用適配器?寫「@ARGV || ='。';」?有什麼不對?
$ perl -Mstrict -wE '@ARGV ||= ".";'
Can't modify array dereference in logical or assignment (||=) at -e line 1, near "'.';"
Execution of -e aborted due to compilation errors.
雖然愉快地處理
$ perl -Mstrict -wE '@ARGV = @ARGV || ".";'
我沒有看到perldiag
解釋幫助在這裏了:
不能在%s修改%S
(F)您不能分配給所指示的項目,否則嘗試對其進行更改,例如使用自動遞增。
這種行爲更人性化的解釋是大加讚賞。
http://stackoverflow.com/questions/4385998/why-doesnt-work-with-arrays –
@mpapec:尋找問題 – Zaid