-
원형 큐 삭제 메서드 구현
CircularQueue.cpp
/// <summary> /// CircularQueue의 시작 부분을 제거하지 않고 반환한다. /// </summary> /// <returns>시작 부분에 있는 값</returns> int CircularQueue::Peek() { if (m_count <= 0) { throw std::out_of_range("empty"); } return m_items[m_rear]; } /// <summary> /// CircularQueue의 시작 부분의 값을 제거한 뒤 반환한다. /// </summary> /// <returns>시작 부분에 있던 값</returns> int CircularQueue::Dequeue() { if (m_count <= 0) { throw std::out_of_range("empty"); } int data{ m_items[m_rear++] }; m_rear = m_rear % (m_capacity + 1); m_count--; return data; } /// <summary> /// CircularQueue의 모든 값을 제거한다. /// </summary> void CircularQueue::Clear() { m_front = m_rear = m_count = 0; }
더보기참고문헌