Go to the first, previous, next, last section, table of contents.


代入演算子

"=" は通常の代入演算子です。

代入演算子は C の場合と同様の働きをします。つまり、

$a += 2;

は、

$a = $a + 2;

と等価ですが、tie() のようなもので起こる左辺値の被参照による副作用が 2 回起こることはありません。他の代入演算も同様に働きます。以下のものが認識 されます:

         **=    +=    *=    &=    <<=    &&=
                -=    /=    |=    >>=    ||=
                .=    %=    ^=
                      x=

グループ分けしてありますが、これらはいずれも代入演算子として同じ優先順位 となっています。

C と違って、代入演算子は有効な左辺値を作り出します。代入を修正することは、 代入を行なってから、その代入された変数を修正するのと同じことになります。 これは:

($tmp = $global) =~ tr [A-Z] [a-z];

ように何かのコピーを変更したいときに便利です。同じように、

($a += 2) *= 3;

は、

$a += 2;
$a *= 3;

と等価となります。


Go to the first, previous, next, last section, table of contents.

検索式: