0
点赞
收藏
分享

微信扫一扫

C++ 映射Map的使用

北冥有一鲲 2022-01-12 阅读 79
#include <iostream>
#include <map>
#include <string>

using namespace std;

int main()
{
    //以int为key, string为value, 的基本赋值
    map<int, string> dataMap;
    dataMap[111] = string("xiaoming");
    dataMap[222] = string("xiaoli");
    dataMap[333] = string("xiaowang");

    pair<int, string> value(666, string("xiaozhang"));
    dataMap.insert(value); //插入新元素

    //建立迭代器,循环查找值
    map<int, string>::iterator iter;
    for(iter = dataMap.begin(); iter != dataMap.end(); iter++)
    {
        cout << iter->first << ":" << iter->second << endl;
    }

    //查找
    map<int, string>::iterator iter_find;
    iter_find = dataMap.find(333);
    if(iter_find != dataMap.end())
    {
        cout << "333:" << iter_find->second << endl;
    }
    //修改value, 但不可修改key
    iter_find->second = string("xiaoqian");

    //删除
    dataMap.erase(iter_find);  //删除一个条目
    dataMap.erase(222);//根据key删除

    //判断map是否为空
    if(dataMap.empty())
    {
        cout << "dataMap 为空" << endl;
    }

    //获取map里插入数据的个数
    int nSize = dataMap.size();
    
    //清空map,删除所有元素
    dataMap.clear();
    
    return 0;
}
举报

相关推荐

0 条评论