C++ STL一一map存储小实例
来源:互联网 发布:ubuntu更新软件命令 编辑:程序博客网 时间:2024/05/16 07:07
map存储在xml文件中的体现是非常方便的,如下简单的xml文件实例结构
/*<Params> <Name>xuanyin235</Name> <Age>24</Age> <Sex>male</Sex></Params>*/
/*<SubItems> <Item1 Name="xuanyin235" Age="24" Sex="male" /> <Item2 Name="kitty" Age="18" Sex="female" /> <Item3 Name="Kimi" Age="13" Sex="male" /></SubItems>*/代码存储实例如下:
//vector_map.h#include <vector>#include <map>#include <iostream>#include <string>using namespace std;typedef struct{vector<string> v_param;map<string,string> m_param;}_V_1MAP_PARAM,*_pV_1MAP_PARAM;typedef struct{vector<string> v_param;map<string,_V_1MAP_PARAM> m_param;}_V_2MAP_PARAM,_pV_2MAP_PARAM;typedef struct {_V_1MAP_PARAM m_v_1map_param;_V_2MAP_PARAM m_v_2map_param;}_DEF_PARAM;void InitParams();void InitSubItems();
//vector_map.cpp#include "vector_map.h"_DEF_PARAM def_param;void main(){InitParams();cout<<"***************InitParams**************"<<endl;for (int iParamIndex=0;iParamIndex<def_param.m_v_1map_param.m_param.size();iParamIndex++){cout<<def_param.m_v_1map_param.v_param[iParamIndex]<<" "<<def_param.m_v_1map_param.m_param[def_param.m_v_1map_param.v_param[iParamIndex]]<<endl;}InitSubItems();cout<<"***************InitSubItems**************"<<endl;for (int iSubItems=0;iSubItems<def_param.m_v_2map_param.m_param.size();iSubItems++){cout<<def_param.m_v_2map_param.v_param[iSubItems]<<" ";_V_1MAP_PARAM v_1map_param;v_1map_param = def_param.m_v_2map_param.m_param[def_param.m_v_2map_param.v_param[iSubItems]];map<string,string>::iterator it = v_1map_param.m_param.begin();for (int index=0;index<v_1map_param.m_param.size();index++){cout<<v_1map_param.v_param[index]<<" "<<v_1map_param.m_param[v_1map_param.v_param[index]]<<" ";}cout<<endl;}}void InitParams(){_V_1MAP_PARAM v_1map_param;v_1map_param.m_param.insert(make_pair("Name","xuanyin235"));v_1map_param.m_param.insert(make_pair("Age","24"));v_1map_param.m_param.insert(make_pair("Sex","male"));map<string,string>::iterator it = v_1map_param.m_param.begin();for (int iParamIndex=0; iParamIndex<v_1map_param.m_param.size();iParamIndex++){v_1map_param.v_param.push_back(it->first);it++;}def_param.m_v_1map_param = v_1map_param;}void InitSubItems(){_V_1MAP_PARAM v_1map_param1;_V_2MAP_PARAM v_2map_param;v_1map_param1.m_param.insert(make_pair("Name","xuanyin235"));v_1map_param1.m_param.insert(make_pair("Age","24"));v_1map_param1.m_param.insert(make_pair("Sex","male"));map<string,string>::iterator it1=v_1map_param1.m_param.begin();for (int i=0;i<v_1map_param1.m_param.size();i++){v_1map_param1.v_param.push_back(it1->first);it1++;}v_2map_param.m_param.insert(make_pair("Item1",v_1map_param1));_V_1MAP_PARAM v_1map_param2;v_1map_param2.m_param.insert(make_pair("Name","kitty"));v_1map_param2.m_param.insert(make_pair("Age","18"));v_1map_param2.m_param.insert(make_pair("Sex","female"));map<string,string>::iterator it2=v_1map_param2.m_param.begin();for (int i=0;i<v_1map_param2.m_param.size();i++){v_1map_param2.v_param.push_back(it2->first);it2++;}v_2map_param.m_param.insert(make_pair("Item2",v_1map_param2));_V_1MAP_PARAM v_1map_param3;v_1map_param3.m_param.insert(make_pair("Name","Kimi"));v_1map_param3.m_param.insert(make_pair("Age","13"));v_1map_param3.m_param.insert(make_pair("Sex","male"));map<string,string>::iterator it3=v_1map_param3.m_param.begin();for (int i=0;i<v_1map_param3.m_param.size();i++){v_1map_param3.v_param.push_back(it3->first);it3++;}v_2map_param.m_param.insert(make_pair("Item3",v_1map_param3));map<string,_V_1MAP_PARAM>::iterator it = v_2map_param.m_param.begin();for (int i=0;i<v_2map_param.m_param.size();i++){v_2map_param.v_param.push_back(it->first);it++;}def_param.m_v_2map_param = v_2map_param;}运行结果:
***************InitParams**************Age 24Name xuanyin235Sex male***************InitSubItems**************Item1 Age 24 Name xuanyin235 Sex maleItem2 Age 18 Name kitty Sex femaleItem3 Age 13 Name Kimi Sex male请按任意键继续. . .
阅读全文
0 0
- C++ STL一一map存储小实例
- C++ STL一一map和multimap
- [c++]stl map
- C++STL:map概述
- C++stl map学习
- C++STL之map
- 【C++】STL--MAP
- [C++]STL之map
- C++STL 之map
- C++STL之map
- map 自定义结构 存储 STL
- STL set 与 map 实例
- STL 【map】【string】小小结
- C++ STL一一vector
- C++ STL一一deque
- C++ STL一一list
- C++ STL一一迭代器
- C++ STL一一迭代器配接器
- scrapy爬取知乎
- linux:bash shell
- Python中解决Gensim找不到模块的问题
- poj 3181
- try、catch、finally相关问题
- C++ STL一一map存储小实例
- TCP网络编程之chat聊天室
- mybatis一对一 一对多关联关联
- Windows上安装MySQL
- Java删除字符串中指定开始到指定结束之间的内容
- C++ explicit关键字详解
- Webservice工作原理及实例
- SWIG之为C/C++的API生成Python调用接口基础
- https://jingyan.baidu.com/album/d169e186620b60436711d860.html?picindex=4