C++練習問題——循環キュー(順次記憶)


派手なものはあまりないし、自分が書いたものがどれだけ今の「コード規範」に合っているのか分からないし、すべて勉強中なので、見てほしい先輩は不足を指摘することができます.
Cirque.h
#pragma once
#include <iostream>
const int INIT_SIZE = 10;   //      
class Cirque{
    //           ,     int 
private:
    int size;   //    
    int front;//   (                )
    int rear;//   (  )
    int* base;//           
 // int length;// length            ,           :)
public:
    Cirque();   //            
    Cirque(int initsize);//    initsize   
    void Clear();   //    
    int Enque(int data);   //  
    int Deque();   //  
    bool IsFull(); //  
    bool IsEmpty();//  
    ~Cirque();  //  
};

Cirque.cpp
#include "cirqueue.h"
using std::cout;
using std::endl;
//----------------------------------------------------
Cirque::Cirque(){//      
    base = new int[INIT_SIZE];
    if(!base){//        
        exit(-1);
    }
    front = rear = 0;    //     :)
    size = INIT_SIZE;
}
//----------------------------------------------------
Cirque::Cirque(int initsize){//         initsize
    base = new int[initsize];
    if(!base){
        exit(-1);
    }
    front = rear = 0;
    size = initsize;
}
//----------------------------------------------------
void Cirque::Clear(){
    front = rear = 0;
}
//----------------------------------------------------
bool Cirque::IsEmpty(){
    if (front == rear) {
        return true;
    }else
    {
        return false;
    }
}
//----------------------------------------------------
bool Cirque::IsFull(){
    if ((rear + 1) % size == front) {
        return true;
    }
    else{
        return false;
    }
}
//----------------------------------------------------
int Cirque::Enque(int data){
    if (!IsFull()) {
        base[rear] = data;
        rear = (rear + 1) % size;
        return 0;
    }
    else{
        return -1;
    }
}
//----------------------------------------------------
int Cirque::Deque(){
    if (!IsEmpty()) {
        int da = base[front];
        front = (front + 1) % size;
        return da;
    }
    else{
        exit(-1);       //     。。。
    }
}
//----------------------------------------------------
Cirque::~Cirque(){
    delete base;
    base = NULL;
}
//----------------------------------------------------

main.cpp
//               ,                   
//          。
#include <iostream>
#include "cirqueue.h"
using std::cout;
using std::endl;
int main(int argc, const char * argv[])
{
    Cirque c1;
    Cirque c2;
    c1.Enque(3);
    c2.Enque(4);
    cout << c1.Deque() << endl;
    cout << c2.Deque() << endl;
    return 0;
}