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 '')
| -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 | ||
