1: //deque04.cpp 3: #include <iostream> 4: #include <string> 5: #include <deque> 6: using namespace std; 8: int main() 9: { 10: cout << "\nThis program illustrates push_back() and push_front() " 11: "for putting values into\na deque, and shows the size of the " 12: "deque after each call to either of these\nmember functions. " 13: "It is worth pointing out here that the deque container class\n" 14: "has the push_front() member function while the vector container " 15: "class does not,\nand the vector container class has a capacity() " 16: "member function while the deque\ncontainer class does not."; 17: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 19: int size; 20: cout << "\nEnter starting size for deque: "; 21: cin >> size; 23: //Create the deque 24: deque<int> d(size); 26: //Add values to back of deque, one at a time. 27: cout << "Enter number of values to add to back: "; 28: int numberToAddToBack; 29: cin >> numberToAddToBack; cin.ignore(80, '\n'); 31: cout << "\nWe will now add the values 1 to " << numberToAddToBack 32: << " to the back of the deque."; 33: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 34: for (int i=1; i<=numberToAddToBack; i++) d.push_back(i); 35: cout << "\nCurrent deque size: " << d.size(); 36: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 38: //Add values to front of deque, one at a time. 39: cout << "\nEnter number of values to add to front: "; 40: int numberToAddToFront; 41: cin >> numberToAddToFront; cin.ignore(80, '\n'); 43: cout << "\nWe will now add the values 1 to " << numberToAddToFront 44: << " to the front of the deque."; 45: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 46: for (int i=1; i<=numberToAddToFront; i++) d.push_front(i); 47: cout << "\nCurrent deque size: " << d.size(); 48: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 50: cout << "\nContents of the deque: "; 51: for (deque<double>::size_type i=0; i<d.size(); i++) 52: cout << d[i] << " "; 53: cout << endl; 54: cout << "Press Enter to continue ... "; cin.ignore(80, '\n'); 55: }