割り当ては、1 つの代入ステートメントで複数の変数に対して 行うことができます。例えば、次のようになります。
A,X = B + C;
B + C の値が A と X の両方に 割り当てられます。 普通は、このステートメントは、 下記のステートメントが実行された場合と同じ結果になります。
Temporary = B + C; A = Temporary; X = Temporary;
代入ステートメント内のソースは、スカラーまたはスカラー配列でなくてはなりません。さらに、ソースが配列の場合は、すべてのターゲットも配列でなくてはなりません。 ソースが定数である場合、各ターゲットに対して左から右に割り当てられます。 ソースが定数ではない場合、一時変数に割り当てられ、 このあと各ターゲットに対して左から右に割り当てられます。
ターゲットは、単一の割り当てで可能な参照であればどの参照でもかまいません。
BY NAME は、複数の割り当てでは使用できません。
非推奨ですが、複数の代入で、複合代入演算子を使用できます。 ただし、結果は必ずしも単純に期待されるものにならないことがあります。例えば、以下のステートメントは一般的に同じ結果を生成しません。
c, c += c; c, c = c + c;