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 + -
显示快捷键?