D 提供了以下二元赋值运算符用于修改 D 变量。您只可以修改 D 变量和数组。不可以使用 D 赋值运算符修改内核数据对象和常量。赋值运算符与在 ANSI-C 中具有相同的含义。
表 2–10 D 赋值运算符
= |
将左边的操作数设置为等于右边的表达式值 |
+= |
将左边的操作数递增右边的表达式值 |
-= |
将左边的操作数递减右边的表达式值 |
*= |
将左边的操作数与右边的表达式值相乘 |
/= |
将左边的操作数与右边的表达式值相除 |
%= |
将左边的操作数按右边的表达式值取模 |
|= |
将左边的操作数与右边的表达式值进行按位 OR 运算 |
&= |
将左边的操作数与右边的表达式值进行按位 AND 运算 |
^= |
将左边的操作数与右边的表达式值进行按位 XOR 运算 |
<<= |
将左边的操作数向左移动右边的表达式值指定的位数 |
>>= |
将左边的操作数向右移动右边的表达式值指定的位数 |
除了赋值运算符 = 以外,所提供的其他赋值运算符是将 = 运算符与先前说明的某个其他运算符配合使用的简写形式。例如,表达式 x = x + 1 等效于表达式 x += 1,不同的是表达式 x 计算一次。这些赋值运算符遵守与前面说明的二元格式相同的操作类型规则。
任何赋值运算符的结果都是等于左边表达式的新值的表达式。您可以将赋值运算符或到现在为止说明的任何运算符与任意复杂度的格式表达式配合使用。也可以使用括号 ( ) 来对复杂表达式中的条件分组。