PLM之家PLMHome-国产软件践行者

[转载电子书] C++ STL相关使用特点大全,太有用了

[复制链接]

2018-3-15 19:07:14 2480 0

admin 发表于 2018-3-15 19:07:14 |阅读模式

admin 楼主

2018-3-15 19:07:14

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x

7 S" u* R# f; u7 M7 _2 U5 E$ g# p& N9 o  I

6 l/ E* I3 ?) b) @- l' N; F' b) P0 ]' l2 v9 ^5 f/ H- d
  u7 [- j5 d& d
C++ STL 的实现:2 M8 v. f- Z3 @+ e" [
9 a; r4 G7 ?* E& I: ^9 U/ c0 W

! ~- J, @& @7 v8 \. z" \1.vector  底层数据结构为数组 ,支持快速随机访问
2 P0 {$ F, s- V2 B2 I0 x! v8 Q4 s4 {( N! Z6 l
4 g! C' Q, m# `7 ~8 ?
2.list    底层数据结构为双向链表,支持快速增删/ T# z# D! i$ c+ Q, t* }% [0 m; C  N
! W  N3 X+ \: E1 l* t5 r
4 v* U& r: E, p7 d
3.deque   底层数据结构为一个中央控制器和多个缓冲区,详细见STL源码剖析P146,支持首尾(中间不能)快速增删,也支持随机访问' T  K) w7 Y% {, n4 L" F- l. G$ }

, J0 g& U  C1 O) ^! A! Y
* u& M1 g+ d8 n+ S$ k
4.stack   底层一般用23实现,封闭头部即可,不用vector的原因应该是容量大小有限制,扩容耗时
. L1 ~1 U/ `1 B* s+ k% B  K% |$ B( I$ d+ [: p1 F2 d) }

# [( }' E" P6 [. b. J$ s* X5.queue   底层一般用23实现,封闭头部即可,不用vector的原因应该是容量大小有限制,扩容耗时0 Q& l5 I/ W& u
! ]  u4 p1 u, _

$ T* e. Y' U8 X/ w' H% ]1 C, S6.45是适配器,而不叫容器,因为是对容器的再封装
. H( A3 y3 J/ |! e% G% W2 |% W6 M7 F8 I

% K) P2 z5 S2 E. ~! S, Y0 ~1 {7.priority_queue 的底层数据结构一般为vector为底层容器,堆heap为处理规则来管理底层容器实现4 |4 Y& d. g9 z8 X7 }

% b/ w( M0 _: U1 f

4 o( X% E/ P& B5 l, R5 ^8.set       底层数据结构为红黑树,有序,不重复
* E7 {1 Q3 B( e/ h* k+ ~& p  T8 q: X  x3 \3 `( r; [
# L! u3 K7 O$ {8 a$ P" u
9.multiset  底层数据结构为红黑树,有序,可重复 , s! O* t6 X$ O2 q
/ \& X8 z8 y# ^6 b

* c) F& c6 h  `8 a0 J10.map      底层数据结构为红黑树,有序,不重复, A9 r  w/ `9 f; `+ {- ^

/ `# `( E2 r, K) e" i& T
7 e, p# W, w* `9 q" n, r2 o
11.multimap 底层数据结构为红黑树,有序,可重复
" n% n1 u& P4 q- e5 I; u) k' {% ]6 w7 q# L6 T  q& \) u3 p

% U9 G& g- x! v8 c# q12.hash_set 底层数据结构为hash表,无序,不重复6 l8 ~: D0 f8 |$ G% ^
% _  b& ?! o( \1 f) h+ e! Z( {
' R! G; |9 e7 i
13.hash_multiset 底层数据结构为hash表,无序,可重复
: C* S) W8 `2 j8 A/ I9 p. D
" i; f$ ^. H: i" a( o4 v( k+ m

. s  h/ X1 |0 e  E- D14.hash_map      底层数据结构为hash表,无序,不重复
) |2 c9 {: G7 b2 r( r: v, Y
2 O, Q0 @; S0 x# Z; v5 M4 |9 V

% U  K. K" ^) ]) J; N4 o15.hash_multimap 底层数据结构为hash表,无序,可重复 / m2 S7 n+ m3 u* X( V: V3 O% F
% ?. [' _8 B2 L+ G" r: t, S3 m
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了