使用堆实现队列

时间:2011-03-20 15:49:34

标签: c++ heap

我正在尝试实现一个队列。

这是我的框架

class Queue { 
 HANDLE heap;    
 Int *buf;     
 Int head, tail;   
 Int spaceAllocated;  
 Int sizeQ;    
public: 
 void Push (Int item);    
 Int Pop (Int *array, int batchSize);  
}

我正在使用Windows API执行此操作。 缓冲区的用途是什么?如何使用?我知道它与堆和保持内存有关。

1 个答案:

答案 0 :(得分:0)

* Buf是您用来存储项目的实际内存指针。我想你在这里使用VirtualAlloc()创建缓冲区?如果是这样,您需要知道队列的最大大小。

顺便说一下,为什么不能使用STL队列?