ptr_list.rst
来自「Boost provides free peer-reviewed portab」· RST 代码 · 共 156 行
RST
156 行
++++++++++++++++++++++++++++++++++ |Boost| Pointer Container Library++++++++++++++++++++++++++++++++++ .. |Boost| image:: boost.pngClass ``ptr_list``------------------A ``ptr_list<T>`` is a pointer container that uses an underlying ``std:list<void*>``to store the pointers. **Hierarchy:**- `reversible_ptr_container <reversible_ptr_container.html>`_ - `ptr_sequence_adapter <ptr_sequence_adapter.html>`_ - `ptr_vector <ptr_vector.html>`_ - ``ptr_list`` - `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 CloneAllocator = heap_clone_allocator, class Allocator = std::allocator<void*> > class ptr_list : public ptr_sequence_adapter < T, std::list<void*,Allocator>, CloneAllocator > { public: // modifiers_ void push_front( T* x ); template< class U > void push_front( std::auto_ptr<U> x ); auto_type pop_front(); public: // `list operations`_ void reverse(); }; // class 'ptr_list' } // namespace 'boost' Semantics---------.. _modifiers: Semantics: modifiers^^^^^^^^^^^^^^^^^^^^- ``void push_front( T* x );`` - Requirements: ``x != 0`` - Effects: Inserts the pointer into container and takes ownership of it - Throws: ``bad_pointer`` if ``x == 0`` - Exception safety: Strong guarantee- ``template< class U > void push_front( std::auto_ptr<U> x );`` - Effects: ``push_front( x.release() );`` .. - ``void push_front( const T& x );`` - Effects: push_front( allocate_clone( x ) ); - Exception safety: Strong guarantee- ``auto_type pop_front():`` - Requirements:``not empty()`` - Effects: Removes the first element in the container - Postconditions: ``size()`` is one less - Throws: ``bad_ptr_container_operation`` if ``empty() == true`` - Exception safety: Strong guarantee.. _`list operations`:Semantics: list operations^^^^^^^^^^^^^^^^^^^^^^^^^^.. - ``void splice( iterator before, ptr_list& x );`` - Requirements:``&x != this`` - Effects: inserts the all of ``x``'s elements before ``before`` - Postconditions: ``x.empty()`` - Throws: nothing - Remark: prefer this to ``transfer( before, x );`` - ``void splice( iterator before, ptr_list& x, iterator i );`` - Not ready yet - ``void splice( iterator before, ptr_list& x, iterator first, iterator last );`` - Not ready yet - ``void merge( ptr_list& x );`` - Not ready yet - ``template< typename Compare > void merge( ptr_list& x, Compare comp );`` - Not ready yet - ``void reverse();`` - Effects: reverses the underlying sequence - Throws: nothing.. raw:: html <hr>:Copyright: Thorsten Ottosen 2004-2006. Use, modification and distribution is subject to the Boost Software License, Version 1.0 (see LICENSE_1_0.txt__).__ http://www.boost.org/LICENSE_1_0.txt
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?