Hola, este ejercicio esta bien hacerlo de esta forma?. Me marea un poco tantos nodos y no se si termine "enganchado" todo de forma correcta.
void cons(int x, lista &l){
nodo_doble nuevo = new nodo_doble;
lista ultimo = l->ant;
nuevo->elem = x;
nuevo->sig = l;
nuevo->ant = ultimo
l->ant = nuevo;
ultimo->sig = nuevo;
l = nuevo;
}