Existe-t-il un algorithme ou une méthode d'aide dans la bibliothèque boost pour rechercher un vecteur de boost::tuple
objets? Voici mon code:Rechercher un vecteur de boost :: tuple
typedef boost::tuple<int, char const*, char const*> Tuple;
typedef std::vector<Tuple> ErrorStringMap;
ErrorStringMap mystrings = tuple_list_of
(10, "10", "ten")
(20, "20", "twenty")
(30, "30", "thirty")
(40, "40", "fourty");
Je veux chercher le vecteur de tuples et trouver la première tuple avec la valeur 20 comme le premier élément du tuple. Je veux accéder aux 2ème et 3ème éléments de ce tuple.
Si vous recherchez toujours l'élément par le premier élément, pensez à utiliser un '(unordered_) map' à la place. – GManNickG
Quel est le problème avec 'std :: find_if'? – ildjarn
@ildjarn Je devrais écrire mon propre foncteur, je crois. J'espérais que boost avait déjà une méthode d'aide qui retournerait une référence au tuple au lieu d'un itérateur (plus facile de travailler avec). Je peux écrire ma propre solution assez facilement, je voulais juste m'assurer que boost n'avait rien pour le premier. –