Руководство по стандартной библиотеке шаблонов STL


Очередь (Queue)


     Любая последовательность, поддерживающая операции front, push_back и pop_front, может использоваться для модификации queue. В частности, могут использоваться list и deque.

template <class Container> class queue { friend bool operator==(const queue<Container>& х, const queue<Container>& y); friend bool operator<(const queue<Container>& х, const queue<Container>& y); public: typedef Container::value_type value_type; typedef Container::size_type size_type; protected: Container c; public: bool empty() const { return c.empty(); } size_type size() const { return c.size(); } value_type& front() { return c.front(); } const value_type& front() const { return c.front(); } value_type& back() { return c.back(); } const value_type& back() const { return c.back(); } void push(const value_type& х) { с.push_back(х); } void pop() { с.pop_front(); } }; template <class Container> bool operator==(const queue<Container>& х, const queue<Container>& y) { return х.с == у.с;} template <class Container> bool operator<(const queue<Container>& х, const queue&ltContainer>& y) { return х.с < у.с; }


Начало  Назад  Вперед



Книжный магазин