二元运算符
下表显示可重载的运算符的列表。
Redefinable 二元运算符
运算符 |
名称 |
---|---|
, |
逗号 |
!= |
不相等 |
% |
模数 |
%= |
取模/分配 |
& |
按位“与” |
&& |
逻辑“与” |
&= |
按位 AND/assignment |
* |
乘法 |
*= |
乘法/分配 |
+ |
添加 |
+= |
添加/分配 |
– |
减法 |
–= |
减法/分配 |
– AMP_GT |
成员选择 |
– AMP_GT* |
指向成员的指针选择 |
/ |
除法 |
/= |
除法/分配 |
< |
小于 |
<< |
左移 |
<<= |
左移/分配 |
<= |
小于或等于 |
= |
赋值 |
== |
相等 |
> |
大于 |
>= |
大于或等于 |
>> |
右移 |
>>= |
右移/分配 |
^ |
排除或 |
^= |
独占 OR/assignment |
| |
按位“与或” |
|= |
按位包含 OR/assignment |
|| |
逻辑“或” |
若要声明二元运算符函数作为非静态成员,则必须将其声明为在窗体中:
浸泡类型的运算符op**(**arg )
其中 浸泡类型 是返回类型, op 是上表中列出的某个运算符,因此, arg 是任何类型的参数。
若要声明二元运算符用作一个全局函数,则必须将其声明为在窗体中:
浸泡类型的运算符op**(arg1,**arg2 )
位置 浸泡类型 和 op 是根据描述用于成员运算符函数和 arg1 和 arg2 是参数。至少有一个参数必须是类类型。
说明 |
---|
没有为二元运算符的返回类型的限制;但是,大多数用户定义的二元运算符返回类类型或引用类类型。 |