Question

I've defined boost::bimap-

typedef boost::bimap    
<
        boost::bimaps::unordered_set_of <CrString>, 
        boost::bimaps::unordered_set_of <RU64>
    > xBimap

each time i check whether i already have the value in the bimap -

// Take iterator to the left node
    xBimap::left_iterator left_iter = m_bimap.left.find(CrString(pi_pLeft));

    // Check if found
    if(left_iter != m_bimap.left.end()) // Found

and if not i'm inserting to it using the command-

m_bimap.insert(xBimap::value_type(pi_pLeft, pi_nRight));

i sometimes don't find the string in the hash although it does exist and in other cases i've already found the exact same string. Then, when i try to insert the value again to the bimap, i see that the number of values in the bi-map doesn't change.

Do you know what can be the reason that i don't find the string in the hash?

Thanks.

No correct solution

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top