我想添加operator<<
到std::vector<string>
. 这是运营商
std::vector<std::string>& operator<<(std::vector<std::string>& op, std::string str) {
op.push_back(str);
return op;
}
现在我可以通过这种方式将元素添加到向量:
std::vector<std::string> vec;
vec << "aaa" << "bbb" << "ccc";
但是由于无法通过引用传递临时对象,因此未编译以下代码。
std::vector<std::string>() << "AAA" << "BBB";
如何更改代码以将元素也添加到临时向量?
我有一个接受const std::vector<std::string>&
参数的函数,所以我想在一行中传递一个向量。