////////////////////////////////////////// 2018/04/26 14:08:56// list-push_front// add an element to the front of the list#include <iostream>#include <list>#include <iomanip>#include <string>usingnamespacestd;
template<class T>
class Name
{
private:
T first, last;
public:
Name(T f, T l) :first(f), last(l){};
void print(){
cout.setf(ios::left);
cout << setw(15) << first << " " << last << endl;
}
};
//=======================int main(){
typedef Name<string> N;
typedeflist<N> L;
L l;
L::iterator it;
N n1(string("Albert"), string("Johnson"));
N n2("Lana", "Vinokur");
l.push_front(n1);
l.push_front(n2);
// unamed object
l.push_front(N("Linda","Bain"));
it = l.begin();
while (it != l.end()){
(it++)->print();
}
cout << endl;
return0;
}
/*
OUTPUT:
Linda Bain
Lana Vinokur
Albert Johnson
*/