For instance, we could be interested in traversing the elements in the priority queue without popping them. Boost Heap priority queue provides a constant iterator that doesn't allow us to modify the underlying data, but lets us fetch them:
#include <iostream> #include <boost/heap/priority_queue.hpp> // ... typedef boost::heap::priority_queue<int> MyPriQue; MyPriQue pq; pq.push(42); pq.push(22); pq.push(24); pq.push(44); for(MyPriQue::const_iterator it = pq.begin(); it != pq.end();++it) { std::cout << *it << ' '; } std::cout << std::endl;The output is:
44 42 24 22
No comments:
Post a Comment