Qt开发:QVariant的使用

一、QVariant介绍

QVariant 是 Qt 提供的一个通用数据类型,它可以存储多种类型的数据,包括基本类型(如 int、double、QString)、复杂类型(如 QByteArray、QDateTime)、以及自定义类型。

二、QVariant 的基本使用

QVariant 的创建
可以直接通过构造函数存储不同类型的数据:

#include <QApplication>
#include <QVariant>
#include <QString>
#include <QDebug>

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

    QVariant v1(42);               // 存储 int
    QVariant v2(3.14);             // 存储 double
    QVariant v3(QString("Hello")); // 存储 QString
    QVariant v4(QByteArray("data")); // 存储 QByteArray

    qDebug() << v1.toInt();    // 42
    qDebug() << v2.toDouble(); // 3.14
    qDebug() << v3.toString(); // "Hello"
    qDebug() << v4.toByteArray(); // "data"

    return a.exec();
}

输出结果:
在这里插入图片描述
QMap与QVariant的结合使用:

include <QApplication>
#include <QVariant>
#include <QDebug>
#include <QMap>
#include <QString>
#include <QColor>

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

    QMap<QString, QVariant> qMap;
    qMap["int"] = 200; // 整型
    qMap["double"] = 99.99; // 浮点型
    qMap["string"] = "Good"; // 字符串
    qMap["color"] = QColor(255, 255, 0);

    // 输出:转换函数来处理
    qDebug() << qMap["int"] << "," <<  qMap["int"].toInt();
    qDebug() << qMap["double"] << "," << qMap["double"].toDouble();
    qDebug() << qMap["string"] << "," <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值