📄 exception_safety.html
字号:
</ul>
<li><tt>hash_multiset<T, H, E, A></tt> member functions:</li>
<ul>
<li><tt>insert_noresize(const value_type& obj)</tt></li>
<li><tt>erase(const key_type& key) </tt><a href="#1">*</a></li>
<li><tt>erase(iterator position)</tt> <a href="#1">* </a></li>
<li><tt>erase(iterator first, iterator last)</tt> <a href="#1">* </a></li>
</ul>
<li><tt>clear()</tt> for all containers <a href="#1">* </a></li>
<li>all container const member functions <a href="#1">*</a></li>
<li>all constructors, by language definition (included for
completeness)</li>
</ul>
<p> </p>
<h3><a name="additional_requirements"></a><b><font size="+2">Strong
guarantee requirements for other mutating container operations</font></b></h3>
<p><a name="2"></a><i>Operations labelled with * are guaranteed to
return normally if all additional requirements have been met) </i></p>
<table border="2" cellspacing="2" cellpadding="2" width="80%">
<caption><b>Definition of terms</b></caption>
<tr>
<td valign="TOP"><b><i>Term</i></b></td>
<td><b><i>Meaning, when applied to a type <tt>T<br>
</tt></i></b><i>(<tt>x</tt> and <tt>y</tt>of type <tt>T</tt>)</i></td>
</tr>
<tr>
<td valign="TOP">"guaranteed copyable"</td>
<td valign="TOP"><tt>T z(x)</tt> and <tt>x = y</tt> may not exit via
exception.</td>
</tr>
<tr>
<td>"guaranteed equality-comparable"</td>
<td valign="TOP"><tt>x == y</tt> may not exit via exception.</td>
</tr>
<tr>
<td>"guaranteed comparable"</td>
<td><tt>x < y</tt> may not exit via exception.</td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b><tt>deque<T,A></tt> member functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>insert(iterator position, const T& x)<br>
insert(iterator position)</tt></td>
<td valign="TOP"><tt>position == begin() || position == end()<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable</td>
</tr>
<tr>
<td><tt>erase(iterator position)</tt></td>
<td><tt>position == begin() || position == end() - 1<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable</td>
</tr>
<tr>
<td><tt>erase(iterator first, iterator last)</tt></td>
<td><tt>first == begin() || last == end()<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable</td>
</tr>
<tr>
<td><tt>resize(size_type new_size, const T& x)<br>
resize(size_type new_size)</tt></td>
<td valign="TOP"><tt>new_size == size() + 1<br>
</tt><b>OR </b><tt>new_size <= size()</tt> <a href="#2">*</a></td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b><tt>list<T,A></tt> member functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>remove(const T& value)</tt></td>
<td valign="TOP"><tt>T</tt> guaranteed equality-comparable</td>
</tr>
<tr>
<td><tt>unique()</tt></td>
<td valign="TOP"><tt>T</tt> guaranteed equality-comparable</td>
</tr>
<tr>
<td><tt>merge(list<T, Alloc>& x)</tt></td>
<td><tt>T</tt> guaranteed comparable</td>
</tr>
<tr>
<td><tt>sort()</tt></td>
<td><tt>T</tt> guaranteed comparable</td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b><tt>vector<T,A></tt> member functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>insert(iterator position, const T& x)<br>
insert(iterator position)</tt></td>
<td valign="TOP"><tt>position == end()<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable</td>
</tr>
<tr>
<td><tt>insert (iterator position, const_iterator first,
const_iterator last);</tt>
<br><tt>void insert (iterator position, size_type n, const T&
x);</tt></td>
<td valign="TOP"><tt>T</tt> guaranteed copyable</td>
</tr>
<tr>
<td><tt>erase(iterator position)</tt></td>
<td><tt>position == end() - 1<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable</td>
</tr>
<tr>
<td><tt>erase(iterator first, iterator last)</tt></td>
<td><tt>last == end()<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable</td>
</tr>
<tr valign="TOP">
<td><tt>resize(size_type new_size, const T& x)<br>
resize(size_type new_size)</tt></td>
<td><tt>new_size == size() + 1<br>
</tt><b>OR </b><tt>T</tt> guaranteed copyable<br>
<b>OR </b><tt>new_size <= size()</tt> <a href="#2">*</a></td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b>Basic Associative Container member functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>map<Key,T,Compare,A>::swap(map<Key,T,Compare,A>&
amp; amp;)</tt></td>
<td valign="TOP"><tt>Compare </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr>
<td><tt>multimap<Key,T,Compare,A>::swap(multimap<Key,T,Compare,A&a
mp;g t;&)</tt></td>
<td valign="TOP"><tt>Compare </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr valign="TOP">
<td><tt>set<T,Compare,A>::swap(set<T,Compare,A>&)</tt></td>
<td><tt>Compare </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr>
<td><tt>multiset<T,Compare,A>::swap(multiset<T,Compare,A>&)
</tt></td>
<td><tt>Compare </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b>hash_map<K, T, HashFcn, EqualKey, A> member
functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>swap(hash_map<K, T, HashFcn, EqualKey,
A>&)</tt></td>
<td valign="TOP"><tt>HashFcn and EqualKey </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr>
<td><tt>insert(const value_type& obj)</tt></td>
<td valign="TOP"><tt>bucket_count() >= size() + 1</tt></td>
</tr>
<tr valign="TOP">
<td><tt>operator[](const key_type& k)</tt></td>
<td><tt>bucket_count() >= size() + 1</tt></td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b>hash_multimap<K, T, HashFcn, EqualKey, A> member
functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>swap(hash_multimap<K, T, HashFcn, EqualKey,
A>&)</tt></td>
<td valign="TOP"><tt>HashFcn and EqualKey </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr>
<td><tt>insert(const value_type& obj)</tt></td>
<td valign="TOP"><tt>bucket_count() >= size() + 1</tt></td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b>hash_set<T, HashFcn, EqualKey, A> member functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>swap(hash_set<K, T, HashFcn, EqualKey,
A>&)</tt></td>
<td valign="TOP"><tt>HashFcn and EqualKey </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr>
<td><tt>insert(const value_type& obj)</tt></td>
<td valign="TOP"><tt>bucket_count() >= size() + 1</tt></td>
</tr>
</table>
<p> </p>
<table border="2" cellspacing="2" cellpadding="2" width="95%">
<caption><b>hash_multiset<T, HashFcn, EqualKey, A> member
functions</b></caption>
<tr>
<td valign="TOP"><b><i>Function</i></b></td>
<td><b><i>Requirements</i></b></td>
</tr>
<tr>
<td valign="TOP"><tt>swap(hash_multiset<K, T, HashFcn, EqualKey,
A>&)</tt></td>
<td valign="TOP"><tt>HashFcn and EqualKey </tt>guaranteed copyable <a href="#2">*</a></td>
</tr>
<tr>
<td><tt>insert(const value_type& obj)</tt></td>
<td valign="TOP"><tt>bucket_count() >= size() + 1</tt></td>
</tr>
</table>
</td></tr><tr valign="top" align="left"><td width="24"><img src="images/trans.gif" border="0" height="1" width="24"></td><td width="776"><img src="images/trans.gif" border="0" height="20" width="50"><br><a href="index.html">Table of Contents</a><br></td></tr><tr valign="top" align="left"><td width="24"><img src="images/trans.gif" border="0" height="1" width="24"></td><td width="776"><img src="images/trans.gif" border="0" height="40" width="80"><br><img src="images/black.gif" border="0" height="1" width="776"></td></tr><tr valign="top" align="left"><td width="24"><img src="images/trans.gif" border="0" height="1" width="24"></td><td width="776"><img src="images/black.gif" border="0" height="1" width="776"></td></tr><tr valign="top" align="left"><td width="24"><img src="images/trans.gif" border="0" height="1" width="24"></td><td width="776"><img src="images/trans.gif" border="0" height="5" width="50"><br><span class="copyright">Copyright 2001 by STLport</span><br><img src="images/trans.gif" border="0" height="50" width="80"></td></tr></table></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -