1110281

练习11.10:可以定义一个 vector<int>::iterator 到 int 的 map 吗?

list<int>::iterator到int的map呢?对于两种情况,如果不能,解释为什么。

【出题思路】

理解关联容器对关键字类型的要求。

【解答】

由于有序容器要求关键字类型必须支持比较操作<,因此

map<vector::iterator, int> m1;

是可以的,因为vector的迭代器支持比较操作。而

map<list<int>::iterator, int> m2;

是不行的,因为list的元素不是连续存储,其迭代器不支持比较操作。

本页共23段,470个字符,763 Byte(字节)