#include "tlistacom.h"
using namespace std;
using std::exception;
using std::bad_alloc;
// Muchisimas cosas por aqui en medio...
bool TListaCom::InsCabeza (const TComplejo& num) {
bool errorMemoria=false;
if (this->EsVacia()) { // Si esta vacia, inserto "A SACO" el primero
try {
primero=new TListaNodo(num);
}
catch (bad_alloc &error) {
errorMemoria=true;
cout << "ERROR " << error.what() << endl;
}
if (!errorMemoria)
ultimo=primero;
}
else {
TListaNodo *Prim=primero; // Obtengo el primero
primero=NULL; // Para crear el nodo
try {
primero=new TListaNodo(num);
}
catch (bad_alloc &error) {
errorMemoria=true;
cout << "ERROR " << error.what() << endl;
}
if (!errorMemoria) {
primero->anterior=NULL;
primero->siguiente=Prim;
(Prim->anterior)=primero;
}
}
return !errorMemoria;
}