如果我对你的理解正确,你需要类似的东西
#include <iostream>
#include <map>
#include <iterator>
int main()
{
std::map<char, unsigned int> m =
{
{ 'A', 1 }, { 'B', 1 }, { 'C', 1 }, { 'D', 1 }, { 'E', 2 }
};
auto it = std::next( std::begin( m ), std::min<decltype( m )::size_type>( m.size(), 2 ) );
if ( it != std::end( m ) )
{
std::cout << it->first << ": " << it->second << '\n';
}
return 0;
}
程序输出是
C: 1
也就是说,您可以将操作与迭代器一起使用。
或者你可能只需要使用类的方法find,例如
#include <iostream>
#include <map>
#include <iterator>
int main()
{
std::map<char, unsigned int> m =
{
{ 'A', 1 }, { 'B', 1 }, { 'C', 1 }, { 'D', 1 }, { 'E', 2 }
};
auto it = m.find( 'C' );
if ( it != std::end( m ) )
{
std::cout << it->first << ": " << it->second << '\n';
}
return 0;
}
程序输出又是
C: 1