Salve vorrei che qualcuno mi aiutasse a risolvere questo problemino
in C++ sto utilizzando le liste e vorrei una volta stampati tutti gli elementi
ristamparli nell'ordine invertito
ecco qui il programma che non funziona
ho utilizzato lo stesso programma che mi stampa il massimo in una lista
non riesco solamente a far stampare l'ordine inverso
#include <string>
#include <list>
#include <iostream>
using namespace std;
void maximum(list<string>& staff)
{
string max="";
list<string>::iterator pos;
for(pos=staff.begin();pos!=staff.end();pos++)
{
if(*(pos)>max)
max=*(pos);
}
cout<<max<<endl;
for(pos=staff.begin();pos!=staff.end();pos++)
{
cout<<*(pos)<<endl;
}
for(pos=(staff.end()).previous();!pos.is_null();pos=pos.previous())
{
cout<<*(pos)<<endl;
}
}
int main()
{
list<string> staff;
staff.push_back("Harry");
staff.push_back("Vivian");
staff.push_back("Zack");
staff.push_back("Sam");
staff.push_back("Dick");
cout << "The maximum element in the list is " ;
maximum(staff);
return 0;
}
non devo utilizzare funzioni della libreria ma devo implementarla io(lo dico perchè so che ci sono funzioni c++ già implementate che potrei usare)