I have below two pieces of code:
// multiset::begin/end
#include <iostream>
#include <set>
#include <vector>
int main ()
{
int myints[] = {42,71,12};
std::set<int> mymultiset (myints,myints+2);
std::set<int> mymultiset1 (myints,myints+2);
std::set<int>::iterator it=std::prev(mymultiset.end());
std::set<int>::iterator it1=std::prev(mymultiset1.end());
std::cout << "mymultiset contains:";
for (; it!=std::prev(mymultiset.begin()) && it1!=std::prev(mymultiset1.begin()); --it,--it1)
std::cout << "PPP" << *it;
std::cout << "\nmymultiset contains:";
for (it=std::prev(mymultiset.end()); it!=std::prev(mymultiset.begin()) ; --it)
std::cout << "UUU" << *it;
std::cout << "\nmymultiset contains:";
for ( it=mymultiset.begin(); it!=(mymultiset.end()); it++)
std::cout << "KKK" << *it;
std::cout << '\n';
return 0;
}
but why the output is mymultiset contains:PPP71 mymultiset contains:UUU71 mymultiset contains:KKK42KKK71