diff options
author | Mike Buland <eichlan@xagasoft.com> | 2009-11-18 21:22:54 +0000 |
---|---|---|
committer | Mike Buland <eichlan@xagasoft.com> | 2009-11-18 21:22:54 +0000 |
commit | 92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e (patch) | |
tree | 1211ddf7e5d1034e5a981df8231590625a5eb73b /src/queue.h | |
parent | 509d136e9adb60c56369565b9545e613cac3678e (diff) | |
download | libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.tar.gz libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.tar.bz2 libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.tar.xz libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.zip |
Hey, fixed the problems in heap. It should now work properly no matter what the
data or order etc.
Diffstat (limited to 'src/queue.h')
-rw-r--r-- | src/queue.h | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/queue.h b/src/queue.h index 78f6db6..8b5c607 100644 --- a/src/queue.h +++ b/src/queue.h | |||
@@ -8,14 +8,29 @@ | |||
8 | #ifndef BU_QUEUE_H | 8 | #ifndef BU_QUEUE_H |
9 | #define BU_QUEUE_H | 9 | #define BU_QUEUE_H |
10 | 10 | ||
11 | #include <memory> | ||
12 | |||
13 | namespace Bu | 11 | namespace Bu |
14 | { | 12 | { |
15 | template<typename value, typename valuealloc = std::allocator<value> > | 13 | /** |
14 | * Queue abstract baseclass | ||
15 | */ | ||
16 | template<typename value> | ||
16 | class Queue | 17 | class Queue |
17 | { | 18 | { |
18 | public: | 19 | public: |
20 | Queue() | ||
21 | { | ||
22 | } | ||
23 | |||
24 | virtual ~Queue() | ||
25 | { | ||
26 | } | ||
27 | |||
28 | virtual void enqueue( const value &i )=0; | ||
29 | virtual value dequeue()=0; | ||
30 | virtual value &peek()=0; | ||
31 | virtual const value &peek() const=0; | ||
32 | virtual bool isEmpty() const=0; | ||
33 | virtual int getSize() const=0; | ||
19 | 34 | ||
20 | private: | 35 | private: |
21 | 36 | ||