哎就是我把N条消息存放到了一个表 比如  我的一个用户是test 他的对应消息是123  321  现在写个函数 就是根据用户名 返回对应的消息    我是这样写的
int nMsgCount=this->UserQuetList.count(name);
string strMsg[2];
string *str=NULL;
CIT cQuet=this->UserQuetList.find(name);
for (;cQuet!=this->UserQuetList.end();cQuet++) {
strMsg[nIndex]=cQuet->first;

continue; }

nIndex=0;
str=strMsg;
return str;
他返回是“” 我都郁闷 了 ,   要如何 才能 返回他的消息条目  我返回的是string *指针 难倒真的错了吗 谢谢

解决方案 »

  1.   

    应该是strMsg[nIndex++]=cQuet->first吧;
    看不到CIT定义为什么?
      

  2.   

    nIndex没有看到初始化啊,也没有看到它自加
      

  3.   

    哎呀大家都郁闷了吧  NINDEX  是初始化为0 是个全局的 ++ 这个都没问题 其实是string * 和char *指针我没区分好   string *好想是指向的二维数组 我现在也没搞明白 请高人指点下 , 我现在用的vector保存
      

  4.   

    for (;cQuet!=this->UserQuetList.end();cQuet++){
    strMsg[nIndex]=cQuet->first;continue;}

    这段从cQuet遍历到list结束,最后strMsg[nIndex]= list中倒数第二个元素。能保证这个元素->frist不为空吗?
      

  5.   

    不知道楼主为什么不用map