【发布时间】:2013-09-30 22:16:14
【问题描述】:
首先,如果这是一个令人眼花缭乱的简单而明显的问题,我想道歉。我知道这对有专业知识的人来说是相当容易的。 C++11 允许以列表形式初始化向量:
std::vector<std::string> v = {
"this is a",
"list of strings",
"which are going",
"to be stored",
"in a vector"};
但这在旧版本中不可用。我一直在想最好的方法来填充字符串向量,到目前为止我唯一能想到的就是:
std::string s1("this is a");
std::string s2("list of strings");
std::string s3("which are going");
std::string s4("to be stored");
std::string s5("in a vector");
std::vector<std::string> v;
v.push_back(s1);
v.push_back(s2);
v.push_back(s3);
v.push_back(s4);
v.push_back(s5);
它有效,但写起来有点麻烦,我相信有更好的方法。
【问题讨论】:
-
使用数组来初始化它。您应该可以在
std::vector的教程中找到示例。 -
查看这个相关问题:stackoverflow.com/questions/231491/…
标签: c++ stdvector stdstring c++03