将用逗号隔开的字符串存入MAP里

mapCstringToIntMap(CString strSource)
{
mapserverIDMap;
if(strSource.IsEmpty())
return serverIDMap;

int nFind = -1,nIndex = 0;
nFind = strSource.Find(',');
if(nFind<0)
serverIDMap[atoi(strSource)] = atoi(strSource);
else
{
while(1)
{
serverIDMap[atoi(strSource.Left(nFind))] = atoi(strSource.Left(nFind));
strSource = strSource.Mid(nFind+1,strSource.GetLength());
nFind = strSource.Find(',');
if(nFind < 0)
{
serverIDMap[atoi(strSource)] = atoi(strSource);
break;
}
}
}
return serverIDMap;
}




用法:
mapserverIDListMap;
map::iterator it;
serverIDListMap = CstringToIntMap(strServerIDList);


it = serverIDListMap.find(nServerID);
if(it != serverIDListMap.end())                                                      //如果找到
                     ......

你可能感兴趣的:(算法,GM客户端,c++)