什么情况下用哪种,两种有什么区别吗?还是说本质一样,有详细的解释吗?
map更方便,比如可以用key直接索引到value,自动初始化key项,所以针对这种特殊的需求,直接用map更好。
map是字典类似,方便查找,vector是数组形式,但也支持随机访问。
map插入元素会自动排序,其本质是基于红黑树实现的,在查找元素和访问元素上面速度快,
vecotor的实现则是基于数组,,随机访问(下标访问)速度快.因为其不需要排序,所以在插入元素上比map要快
在c++STL中,序列式容器与关联式容器各有优势:
1.例如你要对pair元素进行value或者key的重新排序等操作就最好用vector>
2.如果只是通过key,寻找value,就用关联式容器,查找速度不是一般的快