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

"=="没找到接受“XXX”类型的左操作数的运算符(或没有可接受的转换)

2013-07-08 
没有找到接受“XXX”类型的左操作数的运算符(或没有可接受的转换)for(UserList::iterator UserIterator

"=="没有找到接受“XXX”类型的左操作数的运算符(或没有可接受的转换)
for(UserList::iterator UserIterator = ClientList.begin();
      UserIterator != ClientList.end();
      UserIterator++)
{
       if(strcmp((*UserIterator).userName,currentuser.userName) == 0)
      {
             // typedef list<stUserListNode> UserList;
             // UserList ClientList;
             ClientList.remove(*UserIterator); //此处错,求解
             break;
       }
}
错误 6 error C2678: 二进制“==”: 没有找到接受“stUserListNode”类型的左操作数的运算符(或没有可接受的转换) Iterator
[解决办法]

ClientList.remove(UserIterator); //去掉*号,编译应该没错

[解决办法]
问题是,一边改变UserList的内容,一边遍历,会出错滴...

[解决办法]
没事,他只是删除一个就退出了,不会出错, 不要用(*UserIterator).userName,看着多余。
UserIterator->userName

热点排行