首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于map和CStringList的有关问题

2012-04-24 
【求助】关于map和CStringList的问题定义了一个map容器:mapCString,CStringList* m_JobHashList这是类中

【求助】关于map和CStringList的问题
定义了一个map容器:
map<CString,CStringList*> m_JobHashList;这是类中一个static成员
key是JobID,value作Hash列表,下面这段代码是一个函数,目的是将strHash插入JobID对应的Hash列表中

C/C++ code
void AddJobHash(CString strJobID,CString strHash){        map<CString,CStringList*>::iterator iter;        iter=m_JobHashList.find(strJobID);        if(iter!=m_JobHashList.end()){            iter->second->AddTail(strHash);            return;        }        CStringList hashlist;        hashlist.AddTail(strHash);        m_JobHashList.insert(make_pair(strJobID,&hashlist));}

请问,m_JobHashList中会保存正确的内容吗?我的意思是strHash,hashlist只是局部变量,将其内容插入这个map容器,能在其他地方正确使用吗?如果将map的value类型改为CStringList类型,而不是指针,则在执行AddTail的时候出错,就是error C2248: “CObject::CObject”: 无法访问 private 成员(在“CObject”类中声明) 
求高手指点一下,先谢谢了

[解决办法]
hashlist需要new出来,上面的代码就没有问题了。
[解决办法]
探讨

引用:

hashlist需要new出来,上面的代码就没有问题了。
哦,这样啊,那我先试试,先谢谢了

热点排行