"=="没有找到接受“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