?? slist.html
字號:
<HTML><HEAD><TITLE><slist></TITLE></HEAD><BODY><H1><A NAME="<slist>"><CODE><slist></CODE></A></H1><HR><PRE>namespace std {template<class T, class A> class <B><A HREF="#slist">slist</A></B>; // TEMPLATE FUNCTIONStemplate<class T, class A> bool <B><A HREF="#operator==">operator==</A></B>( const slist<T, A>& lhs, const slist<T, A>& rhs);template<class T, class A> bool <B><A HREF="#operator!=">operator!=</A></B>( const slist<T, A>& lhs, const slist<T, A>& rhs);template<class T, class A> bool <B><A HREF="#operator<">operator<</A></B>( const slist<T, A>& lhs, const slist<T, A>& rhs);template<class T, class A> bool <B><A HREF="#operator>">operator></A></B>( const slist<T, A>& lhs, const slist<T, A>& rhs);template<class T, class A> bool <B><A HREF="#operator<=">operator<=</A></B>( const slist<T, A>& lhs, const slist<T, A>& rhs);template<class T, class A> bool <B><A HREF="#operator>=">operator>=</A></B>( const slist<T, A>& lhs, const slist<T, A>& rhs);template<class T, class A> void <B><A HREF="#swap">swap</A></B>( slist<T, A>& lhs, slist<T, A>& rhs); };</PRE><P>Include the <A HREF="index.html#STL">STL</A>standard header <B><CODE><slist></CODE></B> to define the<A HREF="lib_cont.html#Containers">container</A>template class <CODE>slist</CODE> and several supportingtemplates.</P><H2><A NAME="operator!="><CODE>operator!=</CODE></A></H2> <PRE>template<class T, class A> bool <B>operator!=</B>( const slist <T, A>& lhs, const slist <T, A>& rhs);</PRE> <P>The template function returns <CODE>!(lhs == rhs)</CODE>.</P><H2><A NAME="operator=="><CODE>operator==</CODE></A></H2> <PRE>template<class T, class A> bool <B>operator==</B>( const slist <T, A>& lhs, const slist <T, A>& rhs);</PRE> <P>The template function overloads <CODE>operator==</CODE> to comparetwo objects of template class<A HREF="#slist"><CODE>slist</CODE></A>. The function returns<CODE>lhs.<A HREF="#slist::size">size</A>() == rhs.size() &&<A HREF="algorith.html#equal">equal</A>(lhs.<A HREF="#slist::begin">begin</A>(), lhs.<A HREF="#slist::end">end</A>(), rhs.begin())</CODE>.</P><H2><A NAME="operator<"><CODE>operator<</CODE></A></H2> <PRE>template<class T, class A> bool <B>operator<</B>( const slist <T, A>& lhs, const slist <T, A>& rhs);</PRE> <P>The template function overloads <CODE>operator<</CODE> to comparetwo objects of template class<A HREF="#slist"><CODE>slist</CODE></A>. The function returns<CODE><A HREF="algorith.html#lexicographical_compare">lexicographical_compare</A>(lhs.<A HREF="#slist::begin">begin</A>(), lhs.<A HREF="#slist::end">end</A>(), rhs.begin(), rhs.end())</CODE>.</P><H2><A NAME="operator<="><CODE>operator<=</CODE></A></H2> <PRE>template<class T, class A> bool <B>operator<=</B>( const slist <T, A>& lhs, const slist <T, A>& rhs);</PRE> <P>The template function returns <CODE>!(rhs < lhs)</CODE>.</P><H2><A NAME="operator>"><CODE>operator></CODE></A></H2> <PRE>template<class T, class A> bool <B>operator></B>( const slist <T, A>& lhs, const slist <T, A>& rhs);</PRE> <P>The template function returns <CODE>rhs < lhs</CODE>.</P><H2><A NAME="operator>="><CODE>operator>=</CODE></A></H2> <PRE>template<class T, class A> bool <B>operator>=</B>( const slist <T, A>& lhs, const slist <T, A>& rhs);</PRE> <P>The template function returns <CODE>!(lhs < rhs)</CODE>.</P><H2><A NAME="slist"><CODE>slist</CODE></A></H2><HR><P><B><CODE><A HREF="#slist::allocator_type">allocator_type</A>· <A HREF="#slist::assign">assign</A>· <A HREF="#slist::back">back</A>· <A HREF="#slist::begin">begin</A>· <A HREF="#slist::clear">clear</A>· <A HREF="#slist::const_iterator">const_iterator</A>· <A HREF="#slist::const_pointer">const_pointer</A>· <A HREF="#slist::const_reference">const_reference</A>· <A HREF="#slist::difference_type">difference_type</A>· <A HREF="#slist::empty">empty</A>· <A HREF="#slist::end">end</A>· <A HREF="#slist::erase">erase</A>· <A HREF="#slist::front">front</A>· <A HREF="#slist::get_allocator">get_allocator</A>· <A HREF="#slist::insert">insert</A>· <A HREF="#slist::iterator">iterator</A>· <A HREF="#slist::slist">slist</A>· <A HREF="#slist::max_size">max_size</A>· <A HREF="#slist::merge">merge</A>· <A HREF="#slist::pointer">pointer</A>· <A HREF="#slist::pop_back">pop_back</A>· <A HREF="#slist::pop_front">pop_front</A>· <A HREF="#slist::previous">previous</A>· <A HREF="#slist::push_back">push_back</A>· <A HREF="#slist::push_front">push_front</A>· <A HREF="#slist::reference">reference</A>· <A HREF="#slist::remove">remove</A>· <A HREF="#slist::remove_if">remove_if</A>· <A HREF="#slist::resize">resize</A>· <A HREF="#slist::reverse">reverse</A>· <A HREF="#slist::size">size</A>· <A HREF="#slist::size_type">size_type</A>· <A HREF="#slist::sort">sort</A>· <A HREF="#slist::splice">splice</A>· <A HREF="#slist::swap">swap</A>· <A HREF="#slist::unique">unique</A>· <A HREF="#slist::value_type">value_type</A></CODE></B></P><HR> <PRE>template<class T, class A = allocator<T> > class <B>slist</B> {public: typedef A <B><A HREF="#slist::allocator_type">allocator_type</A></B>; typedef typename A::pointer <B><A HREF="#slist::pointer">pointer</A></B>; typedef typename A::const_pointer <B><A HREF="#slist::const_pointer">const_pointer</A></B>; typedef typename A::reference <B><A HREF="#slist::reference">reference</A></B>; typedef typename A::const_reference <B><A HREF="#slist::const_reference">const_reference</A></B>; typedef typename A::value_type <B><A HREF="#slist::value_type">value_type</A></B>; typedef T0 <B><A HREF="#slist::iterator">iterator</A></B>; typedef T1 <B><A HREF="#slist::const_iterator">const_iterator</A></B>; typedef T2 <B><A HREF="#slist::size_type">size_type</A></B>; typedef T3 <B><A HREF="#slist::difference_type">difference_type</A></B>; <B><A HREF="#slist::slist">slist</A></B>(); explicit <B><A HREF="#slist::slist">slist</A></B>(const A& al); explicit <B><A HREF="#slist::slist">slist</A></B>(size_type n); <B><A HREF="#slist::slist">slist</A></B>(size_type n, const T& v); <B><A HREF="#slist::slist">slist</A></B>(size_type n, const T& v, const A& al); <B><A HREF="#slist::slist">slist</A></B>(const slist& x); template<class InIt> <B><A HREF="#slist::slist">slist</A></B>(InIt first, InIt last); template<class InIt> <B><A HREF="#slist::slist">slist</A></B>(InIt first, InIt last, const A& al); iterator <B><A HREF="#slist::begin">begin</A></B>(); const_iterator <B><A HREF="#slist::begin">begin</A></B>() const; iterator <B><A HREF="#slist::end">end</A></B>(); const_iterator <B><A HREF="#slist::end">end</A></B>() const; iterator <B><A HREF="#slist::previous">previous</A></B>(const_iterator it); const_iterator <B><A HREF="#slist::previous">previous</A></B>(const_iterator it) const; void <B><A HREF="#slist::resize">resize</A></B>(size_type n); void <B><A HREF="#slist::resize">resize</A></B>(size_type n, T x); size_type <B><A HREF="#slist::size">size</A></B>() const; size_type <B><A HREF="#slist::max_size">max_size</A></B>() const; bool <B><A HREF="#slist::empty">empty</A></B>() const; A <B><A HREF="#slist::get_allocator">get_allocator</A></B>() const; reference <B><A HREF="#slist::front">front</A></B>(); const_reference <B><A HREF="#slist::front">front</A></B>() const; reference <B><A HREF="#slist::back">back</A></B>(); const_reference <B><A HREF="#slist::back">back</A></B>() const; void <B><A HREF="#slist::push_front">push_front</A></B>(const T& x); void <B><A HREF="#slist::pop_front">pop_front</A></B>(); void <B><A HREF="#slist::push_back">push_back</A></B>(const T& x); void <B><A HREF="#slist::pop_back">pop_back</A></B>(); template<class InIt> void <B><A HREF="#slist::assign">assign</A></B>(InIt first, InIt last); void <B><A HREF="#slist::assign">assign</A></B>(size_type n, const T& x); iterator <B><A HREF="#slist::insert">insert</A></B>(iterator it, const T& x); void <B><A HREF="#slist::insert">insert</A></B>(iterator it, size_type n, const T& x); template<class InIt> void <B><A HREF="#slist::insert">insert</A></B>(iterator it, InIt first, InIt last); iterator <B><A HREF="#slist::erase">erase</A></B>(iterator it); iterator <B><A HREF="#slist::erase">erase</A></B>(iterator first, iterator last); void <B><A HREF="#slist::clear">clear</A></B>(); void <B><A HREF="#slist::swap">swap</A></B>(slist& x); void <B><A HREF="#slist::splice">splice</A></B>(iterator it, slist& x); void <B><A HREF="#slist::splice">splice</A></B>(iterator it, slist& x, iterator first); void <B><A HREF="#slist::splice">splice</A></B>(iterator it, slist& x, iterator first, iterator last); void <B><A HREF="#slist::remove">remove</A></B>(const T& x); templace<class Pred> void <B><A HREF="#slist::remove_if">remove_if</A></B>(Pred pr); void <B><A HREF="#slist::unique">unique</A></B>(); template<class Pred> void <B><A HREF="#slist::unique">unique</A></B>(Pred pr); void <B><A HREF="#slist::merge">merge</A></B>(slist& x); template<class Pred> void <B><A HREF="#slist::merge">merge</A></B>(slist& x, Pred pr); void <B><A HREF="#slist::sort">sort</A></B>(); template<class Pred> void <B><A HREF="#slist::sort">sort</A></B>(Pred pr); void <B><A HREF="#slist::reverse">reverse</A></B>(); };</PRE><P>The template class describes an object that controls avarying-length sequence of elements of type <CODE>T</CODE>.The sequence is stored as a singly linked list of elements,each containing a member of type <CODE>T</CODE>.</P><P>The object allocates and frees storage for the sequence it controlsthrough a stored <A HREF="memory.html#allocator object">allocator object</A>of class <CODE>A</CODE>. Such an allocator object must havethe same external interface as an object of template class<A HREF="memory.html#allocator"><CODE>allocator</CODE></A>.Note that the stored allocator object is <I>not</I> copied when the containerobject is assigned.</P><P><B><A NAME="slist reallocation">List reallocation</A></B>occurs when a member function must insert, erase or splice elements ofthe controlled sequence. In all such cases, only the following iteratorsor references become<B><A NAME="invalid slist iterators">invalid</A></B>:</P><UL><LI>iterators that designated a position<B>immediately beyond</B> an inserted element</LI><LI>iterators that designate an erased element or a position<B>immediately beyond</B> an erased element</LI><LI>iterators that designate a spliced element or a position<B>immediately beyond</B> a spliced element</LI></UL>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -