Evyn wrote:
Hi all,
I'm starting to fool around with STL and in particular std::map.
How do I iterate through one map and insert every pair in another map?
I have the following so far:
map<double, doublefset1;
map<double, doublefset3;
fset1.insert(pair<double, double>(1.0,0.4));
// etc etc more values etc etc
ifs1 = fset1.begin();
while(ifs1 != fset1.end())
{
// how to insert is the q!
}
std::copy( fset1.begin(), fset1.end(),
std::inserter( fset2, fset2.begin() ) );
E.g.:
#include <map>
#include <algorithm>
#include <iterator>
#include <iostream>
int main ( void ) {
std::map< int, int a;
std::map< int, int b;
b[2] = 1;
b[4] = 2;
a[3] = 0;
a[5] = 2;
std::copy( a.begin(), a.end(),
std::inserter( b, b.begin() ) );
for ( std::map< int, int >::const_iterator iter = b.begin();
iter != b.end(); ++iter ) {
std::cout << iter->first
<< " --"
<< iter->second
<< "\n";
}
}
Best
Kai-Uwe Bux