CAPÍTULO 21 APARTADO 2134 PÁGINA 777779 SOBRECARGA DE

39 Capítulo 1 1 Combustibles Industriales las Fuentes
Capítulo 10 Principios Generales de Rehabilitacion Jame r Christensen
Capítulo 5 5 Conclusiones y Recomendaciones Conclusiones 1

Tabla de Contenido Capítulos Páginas 1 Resumen Ejecutivo 1


Capítulo 21, Apartado 21

Capítulo 21, Apartado 21.3.4, página 777-779


// sobrecarga de los operadores incremento y decremento

// postfijo y prefijo

#include <iostream>

using namespace std;

class Punto {

public :

// ...

Punto& operator ++(); // prefija

Punto operator ++(int); // postfija

Punto& operator –-();

Punto operator ––(int);

//clase Punto

};

// ...


// operador de incremento con prefijo (++p)

inline Punto& Punto::operator ++()

{

x += 1.0;

y += 1.0;

z += 1.0;

return *this;

}

// operador de incremento con postfijo (p++)

inline Punto Punto::operator ++ (int)

{

x += 1.0;

y += 1.0;

z += 1.0;

return Punto (x - 1.0, y - 1.0, z - 1.0);

}

// operador de decremento con prefijo (--p)

inline Punto& Punto::operator ––()

{

x -= 1.0;

y -= 1.0;

z -= 1.0;

return *this;

}

// operador de decremento con postfijo (p--)

inline Punto Punto::operator --(int)

{

x -= 1.0;

y -= 1.0;

z -= 1.0;

return Punto (x + 1.0, y + 1.0, z + 1.0);

}

// programa principal

int main()

{

Punto p(5.0, 7.0. 8.0);

Punto q(1.0, 2.0, 3.0);

Punto r--;

// presentación de p

cout << " p ( " << p.X() << " , " << p.Y() << " , "

<< p.Z() << " ) " << endl;

r = ++p;

cout << "++p (" << r.X() << " , " << r.Y()

<< "," << r.Z() << " ) " << endl;

// presentación de q

cout << " q(" << q.X() << " , " << q.Y()

<< " , " << q.Z() << " ) " << endl;

r = q++;

cout << "q++(" << r.X() << " , " << r.Y()

<< " , " << r.Z() << " ) " << endl;

}





Tags: sobrecarga, página, capítulo, apartado, 777779