【发布时间】:2010-09-23 16:30:28
【问题描述】:
我有一个装满成对的容器。我想使用 STL 泛型算法对其进行迭代(在我的情况下,它将是 inner_product,但将其视为一个泛型问题)。 我使用的算法首先和最后需要迭代器。我可以提供特殊的迭代器 first 和 last 不会在对上而是在每对的第一个元素上进行迭代?
我知道我可以手动完成,提供一个手工制作的函数对象,它将是标准容器迭代器的包装器,将它尊重到该对本身的第一个成员意图,但我认为还有一个聪明的单线为我做这件事。会是什么?
【问题讨论】:
-
你的意思是,例如你有一个 map.begin() ,你想迭代它的值(.second)?
-
是的,这是同一基本问题的另一个实例。
-
是的。允许升压。哎呀,它甚至是首选:-)
标签: c++ generics templates stl