1: //priority_queue04.cpp
3: #include <iostream>
4: #include <queue>
5: using namespace std;
7: int main()
8: {
9: cout << "\nThis program illustrates how *not* to access "
10: "\nthe components of a priority queue.";
11: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n');
13: priority_queue<int> pq;
14: pq.push(27);
15: pq.push(19);
16: pq.push(35);
17: pq.push(46);
18: pq.push(11);
20: cout << "\nThe priority queue pq contains "
21: << pq.size() << " elements.";
22: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n');
24: cout << "\nNow we attempt to display the values in the priority "
25: "queue using a for-loop\nand checking the size of the priority "
26: "queue to determine when to stop.";
27: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n');
29: cout << "\nHere they are, in priority order:\n";
30: for (priority_queue<int>::size_type i=1; i<=pq.size(); i++) //Whoops!
31: {
32: cout << "Popping ";
33: cout << pq.top() << "\n";
34: pq.pop();
35: }
36: cout << "Press Enter to continue ... "; cin.ignore(80, '\n');
37: }