map
如何在 map 中插入 vector 元素 ?
std::string line; std::string element; double data; while(1){ getline(file_in, line); std::istringstream iss(line); if(!file_in.good()) break; iss >> element; map_xray_data.insert(pair<string, vector<double>>(element, vector<double>())); while(iss >> data){ map_xray_data[element].push_back(data); } }
- 将 map 中元素设置为 pair 的好处是可以用 first 和 second 去索引。
- map, set, multimap, multiset 的迭代器是没有加减法的;而 vector, string, deque 的迭代器是有加减法的。
- 用 map 的时候,最好是知道键的值。否则,是没有意义嘛 ?