// II17 2005-06 // EjemploPilaEnteros.cpp // 18-11-2005 // Ejemplo de uso de la clase PilaEnteros. // Esto no es un test para comprobar que todo funciona correctamente. // solo ilustra como se puede hacer uso de la clase. #include using namespace std; #include "PilaEnteros.h" int main () { PilaEnteros p; p.Ver(); p.Apilar(500); p.Apilar(700); p.Apilar(300); p.Apilar(200); p.Apilar(900); p.Ver(); p.Desapilar(); p.Desapilar(); p.Ver(); if (p.EstaVacia()) cout << "Esta vacia." << endl; else cout << "No esta vacia." << endl; cout << "Talla: " << p.Talla() << endl; cout << "Tope: " << p.Tope() << endl; p.Tope() = 1100; cout << "Tope cambiado: " << p.Tope() << endl; p.Ver(); p.Vaciar(); p.Ver(); if (p.EstaVacia()) cout << "Esta vacia." << endl; else cout << "No esta vacia." << endl; cout << "CONSTRUCTOR DE COPIA:" << endl; p.Apilar(500); p.Apilar(700); p.Apilar(300); PilaEnteros p2(p); p.Ver(); p2.Ver(); p.Vaciar(); p2.Apilar(8800); p.Ver(); p2.Ver(); cout << "ASIGNACION:" << endl; p = p2; p.Ver(); p2.Ver(); cout << "EXCEPCIONES:" << endl; p.Vaciar(); try { p.Tope(); // Esto va a lanzar una excepcion por estar p vacia cout << "Este mensaje no va a salir nunca" << endl; } catch (int) { cout << "Error capturado." << endl; } cout << "FIN." << endl; p.Tope(); // Esto va a lanzar una excepcion por estar p vacia // Al no capturarla, el programa abortara. cout << "Este mensaje tampoco va a salir nunca" << endl; }