⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 extensibleassociativeseq.rst

📁 C++的一个好库。。。现在很流行
💻 RST
字号:
.. Sequences/Concepts//Extensible Associative Sequence |80

Extensible Associative Sequence
===============================

Description
-----------

An |Extensible Associative Sequence| is an |Associative Sequence| that supports 
insertion and removal of elements. In contrast to |Extensible Sequence|, 
|Extensible Associative Sequence| does not provide a mechanism for 
inserting an element at a specific position. 


Expression requirements
-----------------------

|In the following table...| ``s`` is an |Associative Sequence|, 
``pos`` is an iterator into ``s``, and ``x`` and ``k`` are arbitrary types.

In addition to the |Associative Sequence| requirements, the following must be met:

+-------------------------------+---------------------------------------+---------------------------+
| Expression                    | Type                                  | Complexity                |
+===============================+=======================================+===========================+
| ``insert<s,x>::type``         | |Extensible Associative Sequence|     | Amortized constant time   |
+-------------------------------+---------------------------------------+---------------------------+
| ``insert<s,pos,x>::type``     | |Extensible Associative Sequence|     | Amortized constant time   |
+-------------------------------+---------------------------------------+---------------------------+
| ``erase_key<s,k>::type``      | |Extensible Associative Sequence|     | Amortized constant time   |
+-------------------------------+---------------------------------------+---------------------------+
| ``erase<s,pos>::type``        | |Extensible Associative Sequence|     | Amortized constant time   |
+-------------------------------+---------------------------------------+---------------------------+
| ``clear<s>::type``            | |Extensible Associative Sequence|     | Amortized constant time   |
+-------------------------------+---------------------------------------+---------------------------+


Expression semantics
--------------------

|Semantics disclaimer...| |Associative Sequence|.

+-------------------------------+-------------------------------------------------------------------+
| Expression                    | Semantics                                                         |
+===============================+===================================================================+
| ``insert<s,x>::type``         | Inserts ``x`` into ``s``; the resulting sequence ``r`` is         |
|                               | equivalent to ``s`` except that                                   |
|                               | ::                                                                |
|                               |                                                                   |
|                               |     at< r, key_type<s,x>::type >::type                            |
|                               |                                                                   |
|                               | is identical to ``value_type<s,x>::type``; see |insert|.          |
+-------------------------------+-------------------------------------------------------------------+
| ``insert<s,pos,x>::type``     | Equivalent to ``insert<s,x>::type``; ``pos`` is ignored;          |
|                               | see |insert|.                                                     |
+-------------------------------+-------------------------------------------------------------------+
| ``erase_key<s,k>::type``      | Erases elements in ``s`` associated with the key ``k``;           |
|                               | the resulting sequence ``r`` is equivalent to ``s`` except        |
|                               | that ``has_key<r,k>::value == false``; see |erase_key|.           |
+-------------------------------+-------------------------------------------------------------------+
| ``erase<s,pos>::type``        | Erases the element at a specific position; equivalent to          |
|                               | ``erase_key<s, deref<pos>::type >::type``; see |erase|.           |
+-------------------------------+-------------------------------------------------------------------+
| ``clear<s>::type``            | An empty sequence concept-identical to ``s``; see                 |
|                               | |clear|.                                                          |
+-------------------------------+-------------------------------------------------------------------+

.. Invariants
   ----------

   For any extensible associative sequence ``s`` the following invariants always hold: 


Models
------

* |set|
* |map|

.. * |multiset|


See also
--------

|Sequences|, |Associative Sequence|, |insert|, |erase|, |clear|

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -