#include <iostream>
#include <list>
#include <algorithm>
#include <fstream>
using namespace std;
template<class T>
void printList(const list<T> &lisRef);
int main(){
const int SIZE=4;
int a[SIZE]={2,6,4,8};
list<int>values,otherValues;
values.push_front(1);
values.push_front(2);
values.push_front(4);
values.push_front(3);
cout<<"valori contenuti: ";
printList(values);
values.sort();
cout<<"\n valori dopo aver ordinato: ";
printList(values);
otherValues.insert(otherValues.begin(),a,a+SIZE);
cout<<"\naltri valori contenuti: ";
printList(otherValues);
values.splice(values.end(),otherValues);
cout<<"\nDopo la divisione i valori contenuti :";
printList(values);
values.sort();
cout<<"\n i valori contenuti: ";
printList(values);
otherValues.insert(otherValues.begin(),a,a+SIZE);
otherValues.sort();
cout<<"\notherValues contains: ";
printList(otherValues);
values.merge(otherValues);
cout<<"\nDopo unione:\n i valori contenuti: ";
printList(values);
cout<<"\n Altri valori contenuti : ";
printList(otherValues);
values.pop_front();
values.pop_back();
cout<<"\nDOpo eliminazioni in testa e in coda, i valori contenuti: ";
printList(values);
values.merge(otherValues);
cout<<"\n i valori contenuti: ";
printList(values);
values.remove(4);
cout<<"\n Dopo rimozione di 4 , i valori contenuti: ";
printList(values);
cout<<endl;
return 0;
}
template<class T>
void printList(const list<T> &listRef)
{
if(listRef.empty())
cout<<"La lista è vuota";
else{
ostream_iterator<T> output(cout," ");
copy(listRef.begin(),listRef.end(),output);
}
}
ho problemi alle due righe infondo da else fino a output :\