Duda de C++

soyyo22
14 de Mayo del 2005
¿Me podeis decir donde esta el fallo??

Tengo un fichero Floyd.cpp el cual contiene entre otras cosas la siguiente funcion que devuelve una lista.

typedef list<size_t> camino;


camino CaminoMinimo ( const MatrizCaminos& c, size_t i, size_t j)
{

camino cam;
size_t k;

k=c[i][j];

if (c[i][j] != c.dimension())
{
CaminoMinimo (c, i, k);

cam.push_back (k);

CaminoMinimo (c, k, j);
}

return cam;
}

y luego tengo otro fichero que llama a esta funcion e imprime la lista. pero solo imprime el primer elto (o el ultimo no recuerdo bien) ¿pq? gracias

camin = CaminoMinimo (c, x, y);

typedef camino::const_iterator iterador;

for(iterador t = camin.begin(); t != camin.end(); t++)
cout << ciudad[*t] << " ";
cout << endl;