首页 > 代码库 > map、set、multimap、multiset、hash_map、hah_set、hash_multimap、hash_multiset

map、set、multimap、multiset、hash_map、hah_set、hash_multimap、hash_multiset

简单说说map、set、multimap、multiset、hash_map、hah_set、hash_multimap、hash_multiset之间的区别

1、带hash和不带hash之间的区别

带hash的是使用hash_table实现的、无序

不带hash的是使用BR_tree实现的、有序

其它特性相同

一个占用空间大,一个占用空间小

2、带multi和不带multi之间的区别

带multi的可以有重复的键值

不带multi的不可以用重复值

multimap没有重载 [] 运算符

3、map和set的区别

map既有键值又有实值

set只有键值

map、set、multimap、multiset、hash_map、hah_set、hash_multimap、hash_multiset