QT中QStringList或者是QList不带有shuffle方法,如果要实现随机排序功能,可以利用std::random_shuffle 函数来实现
QStringList继承于QList<QString>
因此处理QStringList与处理QList方式一致
测试代码
#include <QCoreApplication>
#include <QStringList>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QStringList strList ;
strList << "hello" << "world" << "ni" << "hao" << "qt" << "test";
QList<QString> list = strList;
qDebug() << "QStringList before shuffle: " << strList;
qDebug() << "QList before shuffle: " << list;
std::random_shuffle(strList.begin(), strList.end());
std::random_shuffle(list.begin(), list.end());
qDebug() << "QStringList after shuffle: " << strList;
qDebug() << "QList after shuffle: " << list;
return a.exec();
}