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