以下代码实现了循环队列的哪种操作?
class CircularQueue { int* arr; int front, rear, size; public: CircularQueue(int k) { size = k; arr = new int[k]; front = rear = -1; } bool enQueue(int value) { if (isFull()) return false; if (isEmpty()) front = 0; rear = (rear + 1) % size; arr[rear] = value; return true; } };