<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.2995" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2>do you have find your solution?</FONT></DIV>
<DIV><FONT size=2>I met the same question.but after i add my compare method, it 
works fine.</FONT></DIV>
<DIV><FONT size=2>so i think you can try to implement your own compare 
way.</FONT></DIV>
<DIV><FONT size=2>for examples:</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV>struct ltstr<BR>{<BR>&nbsp; bool operator()(const char* s1, const char* s2) 
const<BR>&nbsp; {<BR>&nbsp;&nbsp;&nbsp; return strcmp(s1, s2) &lt; 0;<BR>&nbsp; 
}<BR>};<BR><BR>int main()<BR>{<BR>&nbsp; map&lt;const char*, int, ltstr&gt; 
months;<BR>&nbsp; <BR>&nbsp; months["january"] = 31;<BR>&nbsp; 
months["february"] = 28;<BR>&nbsp; months["march"] = 31;<BR>&nbsp; 
months["april"] = 30;<BR>&nbsp; months["may"] = 31;<BR>&nbsp; months["june"] = 
30;<BR>&nbsp; months["july"] = 31;<BR>&nbsp; months["august"] = 31;<BR>&nbsp; 
months["september"] = 30;<BR>&nbsp; months["october"] = 31;<BR>&nbsp; 
months["november"] = 30;<BR>&nbsp; months["december"] = 31;<BR>&nbsp; <BR>&nbsp; 
cout &lt;&lt; "june -&gt; " &lt;&lt; months["june"] &lt;&lt; endl;<BR>&nbsp; 
map&lt;const char*, int, ltstr&gt;::iterator cur&nbsp; = 
months.find("june");<BR>&nbsp; map&lt;const char*, int, ltstr&gt;::iterator prev 
= cur;<BR>&nbsp; map&lt;const char*, int, ltstr&gt;::iterator next = 
cur;&nbsp;&nbsp;&nbsp; <BR>&nbsp; ++next;<BR>&nbsp; --prev;<BR>&nbsp; cout 
&lt;&lt; "Previous (in alphabetical order) is " &lt;&lt; (*prev).first &lt;&lt; 
endl;<BR>&nbsp; cout &lt;&lt; "Next (in alphabetical order) is " &lt;&lt; 
(*next).first &lt;&lt; endl;<BR>}<BR></DIV></BODY></HTML>