这是我的代码:
std::string currentItem;
char delimeter = '=';
std::vector<std::string> afterSplit;
for (int i =0; i<linesOfConfigFile.size(); i++)
{
const std::stringstream singleLine(linesOfConfigFile[i]);
while(std::getline(singleLine, currentItem, delimeter))
afterSplit.push_back(currentItem);
}
我在第三行的getline函数调用中遇到错误。 编译说:
no matching function for call to getline(const std::stringstream&, std::string&, char&)'
但是,我找不到问题所在。参数是否正确?!
答案 0 :(得分:5)
std::stringstream singleLine(linesOfConfigFile[i]);
不
const std::stringstream singleLine(linesOfConfigFile[i]);
声明一个流const没有多大意义,因为每次读取或写入都会修改流状态。