我想在std :: vector中创建一个对象,避免创建它,然后push_back()他。 我听说过emplace_back()但在这种情况下我无法使用它:
std::vector<std::vector<std::string>> info;
然后,任何人都知道如何在第二个向量内创建字符串信息,并在第一个向量的最后位置创建此向量?任何类似的东西,但没有使用 info2 和push_back():
std::vector<std::string> info2;
info2.emplace_back("a");
info.push_back(info2);
答案 0 :(得分:1)
你可以emplace_back
整个矢量,像这样
info.emplace_back(std::vector<string>{"a"});
然而处理矢量矢量是很麻烦的,所以你可以重新考虑你的设计,正如Orbit中的Lightness Races所建议的那样。