如何制作 C++ 意图列表
How to make a C++ intention list
我想像 python 那样列一份意向清单。
list = [1,2,3,4]
newList = [ i * 2 for i in list ]
使用 std、iterator 和 lambda 函数,应该可以在一行中完成相同的事情。
std::vector<int> list = {1,2,3,4} ;
std::vector<int> newList =
你能完成吗?
我找到了这个解决方案。但它不是很好。
std::vector<int> list = {1,2,3,4};
std::vector<int> newList;
std::for_each(list.begin(), list.end(),[&newList](int val){newList.push_back(val*2);});
std::transform
允许您转换值并将它们放在其他地方:
std::vector<int> list = {1,2,3,4};
std::vector<int> newList;
std::transform(
list.cbegin(),
list.cend(),
back_inserter(newList),
[](int x) { return x * 2; });
但实际上,C++ 并不是简洁的语言。
我想像 python 那样列一份意向清单。
list = [1,2,3,4]
newList = [ i * 2 for i in list ]
使用 std、iterator 和 lambda 函数,应该可以在一行中完成相同的事情。
std::vector<int> list = {1,2,3,4} ;
std::vector<int> newList =
你能完成吗?
我找到了这个解决方案。但它不是很好。
std::vector<int> list = {1,2,3,4};
std::vector<int> newList;
std::for_each(list.begin(), list.end(),[&newList](int val){newList.push_back(val*2);});
std::transform
允许您转换值并将它们放在其他地方:
std::vector<int> list = {1,2,3,4};
std::vector<int> newList;
std::transform(
list.cbegin(),
list.cend(),
back_inserter(newList),
[](int x) { return x * 2; });
但实际上,C++ 并不是简洁的语言。