Você está na página 1de 2

class Object{

public:

virtual string toString()=0;


virtual bool equals(Object*)=0;
}

ArrayList.h

class ArrayList: public TDAList{

private:
int capacidad;
int size;
Object** array;
public:

virtual bool inserta(Object*,int)


virtual bool append (Object*)
}

ArrayList.cpp

ArrayList::ArrayList(){

size=0;
capacidad=10000;
array= new Object*[capacidad];
}

bool ArrayList::inserta(Object* dato, int pos){

if (this->vacia()) {
if(pos == 1){
array[0]=dato;
size++;
return true;
}else{
return false;
}
}else{
if(pos>=1 && pos <= size){
int casillaLimiteDerecha=pos;
int casillaInsercion=pos-1;
//hacer corrimientos
for(int i = casillaLimiteDerecha; i >= casillaInsercion;i--){
array[i] = array[i-1];
}
array[casillaInsercion] = dato;
size++;
return true;
}else if(pos == size +1 ){
array[pos] = dato;
size++;
return true;
}else{
return false;
}
}
}

bool ArrayList::append(Object* dato){

return insertar(dato, size+1);

Você também pode gostar