Salut,
J'ai décidé de passer à la STL (avec <functional> et <algorithm> ) pour améliorer les performance de mon code algorithmique. Je viens de commencer les modifications ce matin, et j'ai un premier probléme.
Dans ma fonction rand() je veux renvoyer l'indice du 1er élément supérieur à rand (généré aléatoirement, mais utile lol). Ceci reviens à recupérer l'indice à partir de l'iterateur!? Dans mon code *it donne la valeur et non l'indice.
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 int randFromDistribution::rand() { double rand = (double)(std::rand()) / RAND_MAX; std::vector<double>::iterator it = std::find_if( _dist.begin(), _dist.end(), std::bind2nd( std::greater<double>() , rand)); return 1; // return it; temporaire pour compiler! }
++
Partager