如果我想在名称列表中搜索名称,请使用QMap或Qlist容器

时间:2013-07-26 08:08:15

标签: c++ qt

我想维护一个Names列表,然后搜索列表中是否存在文字"a name"

我应该使用QMap:

QMap<QString, bool> Names;
Names.find("a name");

或QList:

QList<QString> Names:
bool found = false;
foreach(QString name, Names){
    if (name == "a name"){
        found = true;
        break;
    }
}

2 个答案:

答案 0 :(得分:3)

如果您不需要容器有任何订单,请使用QSet<QString>

答案 1 :(得分:2)

您可能想要使用的是QSet
您可以通过调用contains()方法

来搜索a name是否在Names