一个模板化C++队列类的代码

下面代码是关于一个模板化C++队列类的代码。

#include<iostream>
#include<cstdlib>
#define default_value 16
using namespace std;
 
template< class T > class Queue
{
    public:
          {delete [] values;}
        bool enQueue( T );
        T deQueue();
        bool isEmpty();
        bool isFull();
    private:
        int size;
        int front;
        int back;
};
 
template< class T > Queue<T>::Queue(int x):
    values(new T[size]),
    front(0),
    back(0)
 
template< class T > bool Queue<T>::isFull()
{
    if((back + 1) %  size == front )
        return 1;
    else
        return 0;
}
 
template< class T > bool Queue<T>::enQueue(T x)
{
    bool b = 0;
   if(!Queue<T>::isFull())
   {
       values[back] = x;
       back = (back + 1) % size;
       b = 1;
   }
  return b;
}
 
template< class T > bool Queue<T>::isEmpty()
{
        return 1;
    else
}
 
template< class T > T Queue<T>::deQueue()
{
    T val = -1;
    if(!Queue<T>::isEmpty())
    {
        val = values[front];
        front = ( front + 1 ) % size;
    }
    else
    {
        cerr << "Queue is Empty : ";
    }
return val;
 
}
 
int main()
{
        Queue <float> qu1(32);
        float x = 1.1;
    cout << "n EnQueued values into qu1: ";
 
        {
            else
                cout << "n Queue (qu1) is full: ";
        }
        cout << "nn DeQueued values from qu1 : n";
    for(int j = 1 ; j < 10 ; j++)
          cout << qu1.deQueue() << endl;
 
    cout << endl << endl;
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值