STL算法和嵌套for循环

时间:2017-12-16 19:22:36

标签: c++ c++11

所以我现在正在尝试更多地了解STL算法,并尝试在线搜索是否可以使用STL算法创建嵌套for循环,但只是没有得到我想要的答案。基本上,在OrderManager中,我有一个CustomerOrders类的向量,它包含一个订单数组。在ItemManager内部,它有一个当前可用的类Items的向量。我在下面的代码中尝试实现的是输出客户要求的任何项目"不可用"。正如您所看到的,我已经创建了一个嵌套for循环,但最终,我想通过STL算法实现这一点,如果可能的话。

如果有什么事情有点混乱,或者我错误地格式化了这个帖子,请告诉我。

{{1}}

1 个答案:

答案 0 :(得分:0)

可以使用std :: for_each和lambdas完成,但这对于此操作来说似乎有点愚蠢,

std::for_each(orders.cbegin(), orders.cend(), [&ostrm] (CustomerOrder const & order) {
  std::vector<Item> const & noOrders = order.NoOrders();
  std::for_each(noOrders.cbegin(), noOrders.cend(), [&ostrm] (Item const & item) { ostrm << item; });
});