📄 array_queue.h
字号:
#ifndef ARRAY_QUEUE
#define ARRAY_QUEUE
template <class T>
class ArrayQueue
{
public:
ArrayQueue(int s=100);
void enqueue(T);
T dequeue();
bool isFull() const
{
return rear==size-1;
}
bool isEmpty() const
{
return head>rear;
}
~ArrayQueue()
{
delete [] arr;
}
private:
int head, rear, size;
T *arr;
friend class Queue_Building;
friend class Opt_Building;
};
template<class T>
ArrayQueue<T>::ArrayQueue(int s)
{
head = 0; rear = -1;
size=s;
arr=new Cell[size];
}
template<class T>
void ArrayQueue<T>::enqueue(T el)
{
if(!isFull())
{
rear++;
arr[rear]=el;
}else
cout<<"Full array.\n";
}
template<class T>
T ArrayQueue<T>::dequeue()
{
if(!isEmpty())
{
T temp;
temp=arr[head];
head++;
return temp;
}else
cout<<"Empty array.\n";
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -