C++ multimap初步使用 4年前

编程语言
9466
C++ multimap初步使用

multimap与map的区别就在于,multimap可以一个键值对应多个值,而map只能一个键值对应一个值

#include <iostream>
#include <map>

int main()
{    
    std::multimap<int,int> x;
    x.insert(std::pair<int,int>(1,1));
    x.insert(std::pair<int,int>(1,2));
    x.insert(std::pair<int,int>(2,3));
    std::multimap<int,int>::iterator it = x.find(1);
    x.erase(it);
    for(auto a : x)
    {
        std::cout << a.second << std::endl;
    }
     return 0;
}

如果通过iterator这种方式删除,只能删除第一个值(如果有多个的话),如果直接erase键值,则删除键值所关联的所有值,上面这个例子输出的是2,3,而如果x.erase(1),则输出的只有3.

乱飞的番茄汁
与不喜欢的人对话,永远爽朗且虚设爱学习人设;与喜欢的人对话,永远无厘头且“浪费时间”。
2
发布数
0
关注者
19171
累计阅读

热门教程文档

Linux
51小节
Objective-C
29小节
Next
43小节
Python
76小节
Maven
5小节
广告