Operadores binarios

En la tabla siguiente se muestra una lista de operadores que se pueden sobrecargar.

Operadores binarios redefinibles

Operador Nombre
, Coma
!= Desigualdad
% Módulo
%= Módulo/asignación
& AND bit a bit
&& Y lógico
&= AND bit a bit/asignación
* Multiplicación
*= Multiplicación/asignación
+ Suma
+= Suma/asignación
- Resta
-= Resta/asignación
-> Selección de miembro
->* Selección de puntero a miembro
/ División
/= División/asignación
< Menor que
<< Desplazamiento a la izquierda
<<= Desplazamiento a la izquierda/asignación
<= Menor o igual que
= Cesión
== Igualdad
> Mayor que
>= Mayor o igual que
>> Desplazamiento a la derecha
>>= Desplazamiento a la derecha/asignación
^ OR exclusivo
^= OR exclusivo/asignación
| OR inclusivo bit a bit
|= OR inclusivo bit a bit/asignación
|| O lógico

Para declarar una función de operador binario como miembro no estático, debe declararla de la forma siguiente:

ret-typeoperatorop(arg)

donde ret-type es el tipo devuelto, op es uno de los operadores que aparecen en la tabla anterior y arg es un argumento de cualquier tipo.

Para declarar una función de operador binario como función global, debe declararla de la forma siguiente:

ret-typeoperatorop(arg1,arg2)

donde where ret-type y op son como se describen para las funciones de operador de miembro y arg1 y arg2 son argumentos. Al menos uno de los argumentos debe ser de tipo de clase.

Nota:

No hay restricciones para los tipos de valor devuelto de los operadores binarios; sin embargo, la mayoría de los operadores binarios definidos por el usuario devuelven un tipo de clase o una referencia a un tipo de clase.

Consulte también

Sobrecarga de operadores