#include <iostream>
#include <map>
#include <vector>
#include <string>
using namespace std;
int main()
{
cout<<"Map的相关操作:"<<endl;
map<string , vector<int> >m_map;
vector<int>vec;
vector<int>vec1;
int i;
for(i=0 ; i<=9 ; i++)
vec.push_back(i);
for(i=1;i<=11;i+=2)
vec1.push_back(i);
cout<<"Map的三种插入记录方法!"<<endl;
cout<<"第一种插入方法! "<<endl;
pair< map<string,vector<int> >::iterator,bool>Insert_Pair;
Insert_Pair = m_map.insert(pair<string,vector<int> >("张三",vec));
if(Insert_Pair.second == true)
cout<<"插入记录成功!"<<endl;
else
cout<<"插入记录失败!"<<endl;
pair<map<string,vector<int>>::iterator,bool>insert_pair;
insert_pair = m_map.insert(pair<string,vector<int> >("李四",vec1));
if(insert_pair.second == true)
cout<<"插入记录成功!"<<endl;
else
cout<<"插入记录失败!"<<endl;
cout<<"第二种插入方法!"<<endl;
m_map["王五"];
for(i=1 ; i<=3 ; i++)
m_map["王五"].push_back(i);
m_map["路人甲"];
for(i=1 ; i<6; i++)
m_map["路人甲"].push_back(i);
cout<<"第三种插入方法!"<<endl;
m_map.insert(map<string,vector<int>>::value_type("猪八戒",vec1));
map<string,vector<int> >::iterator it;
cout<<"访问map的所有记录:"<<endl;
for(it=m_map.begin();it!=m_map.end();it++)
{
cout<<it->first<<":(";
if(it->second.size()>=1)
{
for(i=0; i< (it->second.size()-1);i++)
cout<<it->second[i]<<" ";
cout<<it->second[i];
}
cout<<")"<<endl;
}
map<string,vector<int> >::reverse_iterator iter;
for(iter = m_map.rbegin();iter!=m_map.rend();iter++)
{
cout<<iter->first<<":(";
if(iter->second.size()>=1)
{
for(i=0; i<(iter->second.size()-1);i++)
cout<<iter->second[i]<<" ";
cout<<iter->second[i];
}
cout<<")"<<endl;
}
cout<<"在map中查找的相关操作:map.find(\"王五\")&&map.count(\"猪八戒\")"<<endl;
if(m_map.find("王五") != m_map.end())
cout<<"在map中找到 "<<m_map.find("王五")->first<<"了"<<endl;
if(m_map.count("猪八戒"))
cout<<"在map中找到 "<<m_map.find("猪八戒")->first<<"了"<<endl;
cout<<"看看map的大小"<<endl;
int nsize = m_map.size();
cout<<"map的大小是:"<<nsize<<endl<<endl;
if(m_map.empty())
cout<<"m_map为空"<<endl;
else
cout<<"m_map不为空"<<endl;
cout<<"在map中删除"<<m_map.find("猪八戒")->first<<"了!!"<<endl;
m_map.erase(m_map.find("猪八戒"));
return 0;
}
#include <map>
#include <vector>
#include <string>
using namespace std;
int main()
{
cout<<"Map的相关操作:"<<endl;
map<string , vector<int> >m_map;
vector<int>vec;
vector<int>vec1;
int i;
for(i=0 ; i<=9 ; i++)
vec.push_back(i);
for(i=1;i<=11;i+=2)
vec1.push_back(i);
cout<<"Map的三种插入记录方法!"<<endl;
cout<<"第一种插入方法! "<<endl;
pair< map<string,vector<int> >::iterator,bool>Insert_Pair;
Insert_Pair = m_map.insert(pair<string,vector<int> >("张三",vec));
if(Insert_Pair.second == true)
cout<<"插入记录成功!"<<endl;
else
cout<<"插入记录失败!"<<endl;
pair<map<string,vector<int>>::iterator,bool>insert_pair;
insert_pair = m_map.insert(pair<string,vector<int> >("李四",vec1));
if(insert_pair.second == true)
cout<<"插入记录成功!"<<endl;
else
cout<<"插入记录失败!"<<endl;
cout<<"第二种插入方法!"<<endl;
m_map["王五"];
for(i=1 ; i<=3 ; i++)
m_map["王五"].push_back(i);
m_map["路人甲"];
for(i=1 ; i<6; i++)
m_map["路人甲"].push_back(i);
cout<<"第三种插入方法!"<<endl;
m_map.insert(map<string,vector<int>>::value_type("猪八戒",vec1));
map<string,vector<int> >::iterator it;
cout<<"访问map的所有记录:"<<endl;
for(it=m_map.begin();it!=m_map.end();it++)
{
cout<<it->first<<":(";
if(it->second.size()>=1)
{
for(i=0; i< (it->second.size()-1);i++)
cout<<it->second[i]<<" ";
cout<<it->second[i];
}
cout<<")"<<endl;
}
map<string,vector<int> >::reverse_iterator iter;
for(iter = m_map.rbegin();iter!=m_map.rend();iter++)
{
cout<<iter->first<<":(";
if(iter->second.size()>=1)
{
for(i=0; i<(iter->second.size()-1);i++)
cout<<iter->second[i]<<" ";
cout<<iter->second[i];
}
cout<<")"<<endl;
}
cout<<"在map中查找的相关操作:map.find(\"王五\")&&map.count(\"猪八戒\")"<<endl;
if(m_map.find("王五") != m_map.end())
cout<<"在map中找到 "<<m_map.find("王五")->first<<"了"<<endl;
if(m_map.count("猪八戒"))
cout<<"在map中找到 "<<m_map.find("猪八戒")->first<<"了"<<endl;
cout<<"看看map的大小"<<endl;
int nsize = m_map.size();
cout<<"map的大小是:"<<nsize<<endl<<endl;
if(m_map.empty())
cout<<"m_map为空"<<endl;
else
cout<<"m_map不为空"<<endl;
cout<<"在map中删除"<<m_map.find("猪八戒")->first<<"了!!"<<endl;
m_map.erase(m_map.find("猪八戒"));
return 0;
}