我有一个键为字符串的映射,值是字符串向量,如下所示
std::map<std::string, std::vector<std::string> > keyTable;
我有以下代码,用于解析值字符串并将它们存储到地图中。这些值由 | 分隔。我需要解析它们并将其作为字符串向量存储到地图中。
因此,我有以下代码可以做到这一点。在速度和效率方面是否有更好的解决方案?
keyTable.insert(key, std::vector<std::string>());
std::vector<std::string>& valueVect = keyTable[key];
boost::tokenizer tokens( str , "|");
for ( boost::tokenizer::iterator tok_iter = tokens.begin() ; tok_iter != tokens.end() ; ++tok_iter )
{
valueVect.push_back(*tok_iter);
}