`
473687880
  • 浏览: 504128 次
文章分类
社区版块
存档分类
最新评论

vector和set的区别

 
阅读更多

c++ STL中,vector和set都实现了对一类对象的存储,然后都可以查找、添加、删除、修改。这两个功能看似如此相似,c++为什么会设计这样重复的东西。既生瑜何生亮,既生vector,何生set。当然不是,c++引进vector、set有其细致的考虑。

首先vector属于顺序容器,其元素与存储位置与操作操作有关;set属于关联容器,其元素相当于键值。

vector擅长于解决某个位置是什么值的问题,而set擅长于解决,某个元素在那个位置的问题,知道元素的内容,查找它的位置。因此vector特别好的支持随机访问,而set不支持(不支持下标访问)。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics