ptr_sequence_adapter.rst
来自「Boost provides free peer-reviewed portab」· RST 代码 · 共 453 行 · 第 1/2 页
RST
453 行
++++++++++++++++++++++++++++++++++ |Boost| Pointer Container Library++++++++++++++++++++++++++++++++++.. |Boost| image:: boost.pngClass ``ptr_sequence_adapter``------------------------------This section describes all the common operations for all the pointersequences:- `ptr_vector <ptr_vector.html>`_- `ptr_list <ptr_list.html>`_ - `ptr_deque <ptr_deque.html>`_The ``ptr_sequence_adapter`` is also a concrete class that you can use to create custom pointercontainers from.**Hierarchy:**- `reversible_ptr_container <reversible_ptr_container.html>`_ - ``ptr_sequence_adapter`` - `ptr_vector <ptr_vector.html>`_ - `ptr_list <ptr_list.html>`_ - `ptr_deque <ptr_deque.html>`_ - `ptr_array <ptr_array.html>`_**Navigate:**- `home <ptr_container.html>`_- `reference <reference.html>`_**Synopsis:**.. parsed-literal:: namespace boost { template < class T, class VoidPtrSeq, class CloneAllocator = heap_clone_allocator > class ptr_sequence_adapter { public: // `construct/copy/destroy`_ template< class InputIterator > assign( InputIterator first, InputIterator last ); template< class InputRange > assign( const InputRange& e ); public: // `element access`_ T& front(); const T& front() const; T& back(); const T& back() const; public: // `modifiers`_ void push_back( T* x ); template< class U > void push_back( std::auto_ptr<U> x ); auto_type pop_back(); iterator insert( iterator position, T* x ); template< class U > iterator insert( iterator position, std::auto_ptr<U> x ); template< class InputIterator > void insert( iterator position, InputIterator first, InputIterator last ); template< class InputRange > void insert( iterator position, const InputRange& r ); iterator erase( iterator position ); iterator erase( iterator first, iterator last ); template< class Range > iterator erase( const Range& r ); void resize( size_type size ); void resize( size_type size, T* to_clone ); public: // `pointer container requirements`_ template< class PtrSequence > void transfer( iterator before, typename PtrSequence::iterator object, PtrSequence& from ); template< class PtrSequence > void transfer( iterator before, typename PtrSequence::iterator first, typename PtrSequence::iterator last, PtrSequence& from ); void template< class PtrSequence, class Range > void transfer( iterator before, const Range& r, PtrSequence& from ); template< class PtrSequence > void transfer( iterator before, PtrSequence& from ); public: // `algorithms`_ void sort(); void sort( iterator first, iterator last ); template< class Compare > void sort( Compare comp ); template< class Compare > void sort( iterator begin, iterator end, Compare comp ); void unique(); void unique( iterator first, iterator last ); template< class Compare > void unique( Compare comp ); template< class Compare > void unique( iterator begin, iterator end, Compare comp ); template< class Pred > void erase_if( Pred pred ); template< class Pred > void erase_if( iterator begin, iterator end, Pred pred ); void merge( ptr_sequence_adapter& r ); template< class Compare > void merge( ptr_sequence_adapter& r, Compare comp ); void merge( iterator first, iterator last, ptr_sequence_adapter& from ); template< class Compare > void merge( iterator first, iterator last, ptr_sequence_adapter& from, Compare comp ); public: // `ptr_list interface`_ public: // `ptr_vector interface`_ public: // `ptr_deque interface`_ }; // class 'ptr_sequence_adapter' } // namespace 'boost'.. _`ptr_list interface`: ptr_list.html.. _`ptr_vector interface`: ptr_vector.html.. _`ptr_deque interface`: ptr_deque.htmlSemantics---------.. _`construct/copy/destroy`:Semantics: construct/copy/destroy^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- ``template< class InputIterator > void assign( InputIterator first, InputIterator last );`` - Requirements: ``(first,last]`` is a valid range - Effects: ``clear(); insert( first, last );`` - Postconditions: ``size() == std::distance( first, last );`` - Exception safety: strong guarantee- ``template< class InputRange > void assign( const InputRange& r );`` - Effects: ``assign( boost::begin(r), boost::end(r) );``.. - ``assign( size_type n, const T& u )`` - Effects: ``clear(); insert( begin(), n, u );`` - Postconditions: ``size() == n`` - Exception safety: Strong guarantee.. void resize( size_type sz, const T& x ); Effects: if ( sz > size() ) insert( end(), sz-size(), x ); else if ( sz < size() ) erase( begin()+sz, end() ); else ; //do nothing Postconditions: size() == sz Exception safety: Strong guarantee.. _`element access`:Semantics: element access^^^^^^^^^^^^^^^^^^^^^^^^^- ``T& front();`` - Requirements: ``not empty();`` - Effects: ``return *begin();``- ``const T& front() const;`` - Requirements: ``not empty();`` - Effects: ``return *begin();``- ``T& back();`` - Requirements: ``not empty();`` - Effects: ``return *--end();``- ``const T& back() const;`` - Requirements: ``not empty();`` - Effects: ``return *--end();``.. _`modifiers`:Semantics: modifiers^^^^^^^^^^^^^^^^^^^^- ``void push_back( T* x );``
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?