容器与适配器的个人总结

vector:       是单项连续的数组,因此增加item时,可能地址换了(寻找一个能存放得下当前的item数量),于是iterator可能变化了.只能在尾部加item

list:        双向的链接,因此删除或者增加item不改变iterator.排序只能用自带的sort,因为不能随意访问

deque:       双向的,连续的固定数组组合.

stack:        默认是以deque的适配器,也可以转用以list为底层.无iterator

queue:       默认是以deque的适配器,也可以转用以list为底层.无iterator

priority_queue:  默认是以vector的适配器,再加上heap处理规则.无iterator

set与map:     用自带sort会快一点(因为有heap的排列),有iterator,用红黑树为底部,像list一样删除或增加不会影响到iterator

posted @ 2012-06-01 21:38  ghost&240  阅读(146)  评论(0编辑  收藏  举报