Considérons une classe A ayant un membre x et un std :: vector < A>. Maintenant, c'est une tâche commune de rechercher le maximum x parmi tous les éléments à l'intérieur du vecteur. Clairement, je peux seulement utiliser std :: max_element s'il y a un itérateur sur les x. Mais je dois en écrire un par moi-même, ou simplement faire une simple boucle.Trouver max_element d'un vecteur où un membre est utilisé pour décider si c'est le maximum
maxSoFar = -std::numeric_limits<double>::max();
for(std::vector<A>::const_iterator cit = as.begin(); cit != as.end(); ++cit)
{
if(cit->x > maxSoFar)
maxSoFar = cit->x;
}
, mais il est si pénible, et je suis si paresseux .. Y at-il une meilleure option?
vous pouvez utiliser 'boost'? – Naveen
Oui, notre projet utilise boost de toute façon, mais comment puis-je utiliser boost pour cela? – math