【发布时间】:2016-07-20 06:27:06
【问题描述】:
在 C++11 中,
vector<string> blockPathList;
for(int i = 0; i < blockNum; i++)
{
blockPathList.push_back(desPath + "part" + to_string(i));
}
是否可以像列表理解一样重写上面的代码,或者更短更简洁?
【问题讨论】:
-
blockNum和desPath是什么? -
看起来您正在将一种类型的列表(向量)转换为另一种。这似乎是
map函数的工作,我相当确定 C++ 有。 -
@ChenZhongPu:我的意思是这些信息应该在您的问题中,以便可以适当地回答。阅读有关minimal reproducible example 的更多信息。
-
C++ 是否支持列表推导?您可能正在寻找 Haskell 或 Python
-
您是否对
std::generate感兴趣(尽管在这种情况下您需要预先设置矢量大小)?
标签: c++ c++11 vector list-comprehension