15 #ifndef PRIORITY_QUEUE_IMPL_H
16 #define PRIORITY_QUEUE_IMPL_H
29 template <
class Arg1,
class Arg2,
class Result>
42 bool operator()(
const T& x,
const T& y)
const {
return x < y; }
52 template<
class T,
class Compare >
53 class PriorityQueue_Impl
58 virtual void insert (
const T&) =0;
60 virtual const T&
top ()
const =0;
61 virtual bool remove (T) =0;
62 virtual size_t size () =0;
66 template<
class T,
class Compare>
virtual const T & top() const =0
virtual T & operator[](int)=0
Arg2 second_argument_type
virtual void insert(const T &)=0
bool operator()(const T &x, const T &y) const
Bfunc is used by PriorityQueue_impl.
virtual ~PriorityQueue_Impl()
Less is borrowed from STL implementation.