Std iterator一些用法
来源:互联网 发布:远程控制软件源代码 编辑:程序博客网 时间:2024/06/08 17:09
#include <string>#include <iostream>#include <boost/tokenizer.hpp>#include <boost/typeof/typeof.hpp>#include <vector>#include <fstream>#include <map>#include <algorithm>#include <iterator>using namespace std;int load(const char* path, map<string, vector<string> > &data) { ifstream fin(path); if(!fin) { return -1; } string line = ""; typedef boost::tokenizer< boost::char_separator<char> > tokenizer; boost::char_separator<char> sep("\t"); for(; getline(fin, line); ) { tokenizer tok(line, sep); BOOST_AUTO(it, tok.begin()); string key = *it; it++; copy(it, tok.end(), back_inserter(data[key])); //注意名字 不是bakc_iterator, copy(it++, tok.end(), data[key].begin())不行 } return 0;}int show(map<string, vector<string> > &data) { for (BOOST_AUTO(it, data.begin()); it != data.end(); ++it) { cout << it->first << endl; ostream_iterator<string> osit(cout, "\n"); //输入输出iterator, 可以快速打印 copy(it->second.begin(), it->second.end(), osit); } return 0;}int main(int argc, char* argv[]) { map<string, vector<string> > data; load(argv[1], data); for (BOOST_AUTO(it, data.begin()); it != data.end(); ++it) { cout << it->first << endl; } show(data); return 0;}
0 0
- Std iterator一些用法
- std::string的一些用法
- std::map的一些用法
- <s:iterator>的一些用法
- <s:iterator>的一些用法
- std::set iterator
- std::pair<MAP::iterator,bool>用法,可用来判断插入式否成功
- C++ std::string --- 你可能不知道的一些用法
- C++ std::string --- 你可能不知道的一些用法
- C++ std::string --- 你可能不知道的一些用法
- C++ std::string --- 你可能不知道的一些用法
- C++ std::string --- 你可能不知道的一些用法
- C++ std::string --- 你可能不知道的一些用法
- C++ std::string --- 你可能不知道的一些用法
- std::map的一些常见用法和个别注意事项
- std::bind std::function 用法
- std erase执行后iterator的效果
- std::list使用和迭代器iterator使用
- TextView中ellipsize属性
- 数学之美(吴军著)学习总结和经典摘抄
- Android常用 adb 命令
- 如何上传Android应用到百度应用平台
- 行列转换
- Std iterator一些用法
- hdu 4433 locker(动态规划:枚举状态)
- HttpClient 4.3教程(转载)
- jqMobi基础(4)--jqMobi中Side Menu实现(类似人人网)
- java_数组声明、创建、初始化,对象数组
- 1、Spring之HelloWorld
- Redis源码学习3-基本数据结构之双向链表
- C++学习笔记精华
- Neural Netowrk : BackPropagation