class coche{ int potencia; int puertas; ... public: coche operator+(coche c); bool operator>(); //sobrecarga unaria ... }
coche coche::operator+(coche c){ //para llamar a la función coche3=coche1+coche2; coche nuevo; nuevo.potencia=potencia+c.potencia; //potencia pertenece al coche pasado por la izquierda del operador (coche1) nuevo.puertas=puertas+c.puertas; return nuevo; } bool coche::operator>(){ //para llamar a la función boleano=coche_aux>; if (potencia>200) return true; //potencia es una variable de coche_aux }
struct Punto {int x; int y; };struct Circulo {Punto centro; int radio; };struct Cuadrado {int x; int y; int lado; };struct Rectangulo {int x; int y; int base; int altura; };
class Pantalla{ ... void Dibujar(Punto p); void Dibujar(Circulo c); void Dibujar(Cuadrado c); void Dibujar(Rectangulo r); ...}