Qt工作笔记-QMap查找时要注意的问题(使用contains)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq78442761/article/details/83504835

如下有问题的代码:

#include <QCoreApplication>
#include <QMap>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);


    QMap<QString, QString> map;
    map.insert("1111111", "数据为1");
    map.insert("22222","数据为2");
    map.insert("333", "数据为3");

    qDebug() << map.find("111111").value();

    return a.exec();
}

运行截图如下:

查找的时候应该这么写,找到了再调用!

如下代码:

#include <QCoreApplication>
#include <QMap>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);


    QMap<QString, QString> map;
    map.insert("1111111", "数据为1");
    map.insert("22222","数据为2");
    map.insert("333", "数据为3");

    if(map.contains("1111")){
        qDebug() << map.find("1111").value();
    }

    if(map.contains("22222")){
        qDebug() << map.find("22222").value();
    }

    return a.exec();
}

运行截图如下:

猜你喜欢

转载自blog.csdn.net/qq78442761/article/details/83504835