字符串与QQueue每个元素比较 qt
时间: 2024-03-21 11:39:12 浏览: 50
可以通过QQueue的成员函数at()获取队列中指定位置的元素,然后再与字符串进行比较。比如下面这个例子:
```cpp
#include <QCoreApplication>
#include <QDebug>
#include <QQueue>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QQueue<QString> myQueue;
myQueue.enqueue("foo");
myQueue.enqueue("bar");
myQueue.enqueue("baz");
QString myString = "bar";
for (int i = 0; i < myQueue.size(); i++) {
if (myQueue.at(i) == myString) {
qDebug() << "Found match at index" << i;
}
}
return a.exec();
}
```
这个程序创建了一个QQueue对象,然后往队列中添加了三个字符串。接着定义了一个字符串,用于与队列中的元素进行比较。最后,程序通过循环遍历队列中的每个元素,使用at()函数获取元素,再与字符串进行比较,如果匹配则打印出匹配的位置。
需要注意的是,如果队列中有重复的元素,那么只能找到第一个匹配的位置。如果想要查找所有匹配的位置,需要修改程序。
阅读全文