會有人請給解釋下:
中描述的「編程的Perl」一書後綴自動遞增運算符,如
時後放置,他們(
$a--
,$a++
)遞增或遞減變量返回值後。
所以,我的理解,$a++
從未在無效的情況下使用,導致出現了說,
他們遞增或遞減變量
但在接下來的變量的示例值從未改變:
my $a = 3;
$a = $a++;
say $a; #always outputs 3
所以我的假設是,當值賦給同一個變量時沒有理由使用後自動增量,但是那麼來自「Programming Perl」的定義應該被認爲是錯誤的,因爲操作符不會影響變量,變量(至少在那個例子中)。是對的嗎?
預先提升。
您有正確的假設:$ a = $ a ++是多餘的,因爲它不會增加變量直到再次訪問變量。 – squiguy 2012-07-17 20:42:01
我會想像後綴自動增量運算符的僞代碼就像保存變量的舊值,增量變量,返回舊值一樣。當你這樣想的時候,很容易看出爲什麼你的代碼不會改變'a'中的內容。 – Daniel 2012-07-17 20:45:54