(Translated by https://www.hiragana.jp/)
添加"容器适配器" · Linke66/note@9d11f25 · GitHub
Skip to content

Commit

Permalink
添加てんか"容器ようき适配"
Browse files Browse the repository at this point in the history
  • Loading branch information
arkingc committed Jun 4, 2019
1 parent 7f711ee commit 9d11f25
Showing 1 changed file with 127 additions and 1 deletion.
128 changes: 127 additions & 1 deletion C++/C++Primer.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

|**つね见类がた**|**函数かんすう**|**めんこう对象**|**容器ようき**|**ばんあずか泛型编程**|**うちそん管理かんり**|
|:--:|:--:|:--:|:--:|:--:|:--:|
|[变量](#ch1)<br>[くしあずかかず](#ch4)|[函数かんすう](#ch5)|[](#ch6)<br>[じゅう载运さんあずか类型转换](#ch7)<br>[继承体系たいけい](#ch8)|[容器ようき](#ch9)|[ばんあずか泛型编程](#ch2)<br>|[うちそん管理かんり](#ch3)<br>|
|[变量](#ch1)<br>[くしあずかかず](#ch4)|[函数かんすう](#ch5)|[](#ch6)<br>[じゅう载运さんあずか类型转换](#ch7)<br>[继承体系たいけい](#ch8)|[容器ようき](#ch9)<br>[容器ようき适配](#ch10)|[ばんあずか泛型编程](#ch2)<br>|[うちそん管理かんり](#ch3)<br>|

<br>
<br>
Expand Down Expand Up @@ -140,6 +140,15 @@
+ [3.3 pair](#33-pair)
+ [3.4 操作そうさ](#34-操作そうさ)

<h2 id="ch10"></h2>

* [容器ようき适配](#容器ようき适配)
- [1.通用つうようてき容器ようき适配操作そうさ](#1通用つうようてき容器ようき适配操作そうさ)
- [2.三个顺序容器适配器](#2三个顺序容器适配器)
+ [2.1 stack](#21-stack)
+ [2.2 queue](#22-queue)
+ [2.3 priority_queue](#23-priorityqueue)

<h2 id="ch2"></h2>

* [ばんあずか泛型编程](#ばんあずか泛型编程)
Expand Down Expand Up @@ -2323,6 +2332,123 @@ makepair(v1,v2)
<br>
<br>
# 容器ようき适配
**适配**:いち种机せい以使ぼう种事物的ぶってきぎょう为看おこりらいぞう另外いち种事ぶついち样。如stack适配接受せつじゅいち个顺じょ容器ようき(じょarrayあるforward_listがい),并使其操作そうさおこりらいぞういち个stackいち
容器ようき,迭代函数かんすうゆう适配
## 1.通用つうようてき容器ようき适配操作そうさ
* 类型别名
- size_type
- value_type:元素げんそ类型
- container_type:实现适配てきそこ层容类型
* 构造函数かんすう
- `A a;`:构建いち个空适配すえ适配类型选择其默认底层容类型らい实现
- `A a(c)`:接受せつじゅいち个容cらい构造适配a
* 关系运算まい个适はい支持しじ所有しょゆう关系运算,运算かえしかいそこ层容てき较结はて
- `==`、`!=`、`<`、`<=`、`>`、`>=`
* 大小だいしょう
- `a.empty()`
- `a.size()`
* 交换:`a`、`b`必须具有ぐゆうしょうどう类型
- `swap(a,b)`
- `a.swap(b)`
<br>
## 2.三个顺序容器适配器
* のうようdequeさく为底层容
* 要求ようきゅう具有ぐゆう添加てんか删除元素げんそてき能力のうりょく所以ゆえんそこ层容不能ふのうarray。此外,也不能ふのうstring
* まい个适はいもと于底层容类型てき操作そうさてい义了自己じこてき特殊とくしゅ操作そうさただ使用しよう适配操作そうさ不能ふのう使用しようそこ层容てき操作そうさ
### 2.1 stack
> だま认底层容:deque
需要じゅようてき操作そうさ
* `push_back()`
* `pop_back()`
* `back()`
可用かようてきそこ层容
* 元素げんそてき添加てんか删除需求决定りょう不能ふのうようarray
* back操作そうさ使とく不能ふのう使用しようforward_list
* 以用:vector、list、deque
stack操作そうさ
* 添加てんか元素げんそ
- `s.push(item)`
- `s.emplace(args)`
* 删除元素げんそ
- `s.pop()`:弹出(删除),ただしかいかえしかい
* かえしかい元素げんそ
- `s.top()`:かえしかい栈顶元素げんそただし弹出(删除)
### 2.2 queue
> だま认底层容:deque
需要じゅようてき操作そうさ
* `push_back()`
* `push_front()`
* `front()`
* `back()`
可用かようそこ层容
* 元素げんそてき添加てんか删除需求决定りょう不能ふのうようarray
* back操作そうさ使とく不能ふのう使用しようforward_list
* 首部しゅぶ添加てんか元素げんそ使とく不能ふのう使用しようvector
* 以用:list,deque
queue操作そうさ
* 添加てんか元素げんそ
- `q.push(item)`
- `q.emplace(args)`
* かえしかい元素げんそかい删除元素げんそ
- `q.pop()`:かえしかいくび元素げんそ
- `q.front()`:かえしかいくび元素げんそ
- `q.back()`:かえしかい元素げんそ
### 2.3 priority_queue
> だま认底层容:vector
需要じゅようてき操作そうさ
* `push_back()`
* `pop_back()`
* `front()`
* ずいつくえ访问能力のうりょく
可用かようそこ层容
* 元素げんそてき添加てんか删除需求决定りょう不能ふのうようarray
* 删除末尾まつび元素げんそ使とく不能ふのうようforward_list
* ずいつくえ访问また不能ふのう使用しようlistあずかforward_list
* 可用かようよう:vector,deque
priority_queue操作そうさ
* 添加てんか元素げんそ
- `q.push(item)`
- `q.emplace(args)`
* かえしかい元素げんそかい删除元素げんそ
- `q.pop()`:かえしかい最高さいこう优先级元素げんそ
- `q.top()`:かえしかい最高さいこう优先级元素げんそ
- `q.front()`:かえしかいくび元素げんそ
<br>
<br>
# ばんあずか泛型编程
## 1.かたぎばん函数かんすう
Expand Down

0 comments on commit 9d11f25

Please sign in to comment.