push_back
使用函数更新值的向量不允许为什么?
std::vector< std::string >goin;
goin.push_back(function(somestringvalue)); // why cant it take update value?
void function(std::string& var)
{
var += "pre";
}
答案 0 :(得分:5)
正如其他人所说,问题是function
没有返回任何东西。解决这个问题的方法是让它返回它的参数:
const std::string& function(std::string& var) {
var += "pre";
return var;
}
这样它会修改传递给它的字符串,并返回对该字符串的引用,以便您可以将其推送到向量中。