Duda de C++
¿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;
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;