Ich habe einen Container mit Paaren gefüllt. Ich möchte darin mit den generischen STL-Algorithmen iterieren (in meinem Fall wäre es inner_product, aber betrachte es als generisches Problem). Der Algorithmus, den ich verwende, erwartet Iteratoren zuerst und zuletzt. Kann ich spezielle Iteratoren zuerst und zuletzt bereitstellen, die nicht auf den Paaren, sondern auf dem ersten Element jedes Paares iterieren?Bereitstellen eines Iterators für das erste Element eines Containers von Paaren
Ich weiß, dass ich es manuell tun kann, ein handgemachtes Funktionsobjekt zur Verfügung stellend, das ein Wrapper um den Standardcontaineriterator sein wird und es zum ersten Mitglied des Paares des Paares selbst bestimmt, aber ich denke, dass es gibt auch ein cleverer One-Liner, um es für mich zu tun. Was würde es sein?
Sie meinen zum Beispiel, Sie haben eine map.begin(), und Sie möchten über ihre Werte (.second) iterieren? –
Ja, das ist ein weiteres Beispiel für das gleiche Grundproblem. –
ist Boost erlaubt? :) –