
Tal Agmon ha escrito:
Still I'm having difficulties with understanding your question, but let me try my hand
Your are good! :) I should knock myself for not sending you a snippet code
below you can fiind a "small" example with only 2 indices
[...]
// Now lets say I want to get a list of unique group_id values. // so I should get {10,20} event thought I have 3 elements
//if i use the following [...] //Note that the for loop still iterates 3 times and not 2 times. // Meaning that the results of the key_extractor()(*it) key_value are {10,10,20} // My goal is to get back just {10,20} and not {10,10,20}
[...]
I hope I made my point this time.
Yep, now it is much clearer, thanks. I've taken your snippet and filled in a few bits (missing includes, missing typedef and declaration for index_t and i, the key extractors' operator()'s were not const) and everything seems to be working, both on GCC 3.2 and MSVC 6.5, the output is 10 20 like you require. I don't know how you're observing the loop iterating thrice, here it does two steps as it should. Please check the attached file to see if this solves your needs. Best, Joaquín M López Muñoz Telefónica, Investigación y Desarrollo