[英]How to build std::vector<std::string> from std::initializer_list<char const*>
What is the correct way to build an std::vector<std::string>
from an std::initializer_list<char const*>
?从
std::initializer_list<char const*>
构建std::vector<std::string>
的正确方法是什么? I can iterate through the initializer list and manually build up the vector as such:我可以遍历初始化列表并手动构建向量:
std::initializer_list<char const*> values;
std::vector<std::string> vec;
for(auto v : values) {
vec.push_back(v);
}
Seems quite verbose.看起来相当冗长。 Suggestions?
建议?
std::vector
有一个接受迭代器范围作为输入的构造函数,只要解引用的值可以转换为向量的value_type
:
std::vector<std::string> vec(values.begin(), values.end());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.