我有一个包含QMAP对象的类:QMAP ::包括()没有返回预期值
QMap<QString, Connection*> users;
现在,在下面的函数foo(),if子句总是返回false,但是当我遍历通过映射,比较的QString,即str1出现在键中。
void Foo(QString& str1, QString& str2)
{
if(users.contains(str1))
users[str1]->doStuff(str2);
else
{
for(QMap<QString, Connection>::iterator iter = users.begin();
iter!= users.end();iter++)
qDebug()<<iter.key();
}
}
我做错了什么?为什么不包含()返回true?
在你的问题中是否有错字?你说'str2'出现在键中,但是你正在检查'users'是否包含'str1'。 – 2010-10-21 17:21:49
我已经完成了必要的编辑。 – 2010-10-21 17:26:31