【发布时间】:2021-12-11 10:47:50
【问题描述】:
我不确定是否可以在地图容器中包含矢量。
如果是的话,我可以有矢量和矢量的地图吗?
输入
ONE 1 11 111 1111
TWO 22 2 2222
THREE 333 3333 3
map<string, vector<int>> mp;
如何在上面的容器中放置输入?
map<vector<int>, vector<int>> mp;
如果可以实现,您将如何在此处放置元素,以及如何访问这些元素?
【问题讨论】:
-
使用
std::vector<int>作为std::map的键类型没有任何意义,尤其是对于您显示的输入。 -
问:我不确定是否可以在地图容器中包含矢量。答:当然可以!问:我可以有矢量和矢量的地图吗?答:“映射”是一个键::值对。将“向量”作为“键”的目的是什么????你怎么会使用这样的野兽?
-
您是否有特定的理由怀疑
vector<int>是否有资格作为地图的键(或值)?std::map是否有一些您认为可能会失败的要求? (标准容器通常可以容纳任何类型,除非有特定原因不这样做 - 任何此类特定原因都与逻辑一致性有关,而不是有用性。)