1: //list04.cpp 3: #include <iostream> 4: #include <string> 5: #include <list> 6: using namespace std; 8: int main() 9: { 10: cout << "\nThis program illustrates push_back() and push_front() " 11: "for putting values\ninto a list, and shows the size of the " 12: "list after each call to either of\nthese member functions. "; 13: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 15: int size; 16: cout << "\nEnter starting size for list: "; 17: cin >> size; 19: //Create the list 20: list<int> lst(size); 22: //Add values to back of list, one at a time. 23: cout << "\nEnter number of values to add to back: "; 24: int numberToAddToBack; 25: cin >> numberToAddToBack; cin.ignore(80, '\n'); 27: cout << "\nWe will now add the values 1 to " << numberToAddToBack 28: << " to the back of the list."; 29: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 30: for (int i=1; i<=numberToAddToBack; i++) lst.push_back(i); 31: cout << "\nCurrent list size: " << lst.size(); 32: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 34: //Add values to front of list, one at a time. 35: cout << "\nEnter number of values to add to front: "; 36: int numberToAddToFront; 37: cin >> numberToAddToFront; cin.ignore(80, '\n'); 39: cout << "\nWe will now add the values 1 to " << numberToAddToFront 40: << " to the front of the list."; 41: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 42: for (int i=1; i<=numberToAddToFront; i++) lst.push_front(i); 43: cout << "\nCurrent list size: " << lst.size(); 44: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 46: cout << "\nContents of the list: "; 47: list<int>::iterator p = lst.begin(); 48: while (p != lst.end()) cout << *p++ << " "; 49: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 50: }