QVariant的一些用法

QObject* obj=new QObject;
    obj->setObjectName("myObj");
 
    //保存
    QVariant var=QVariant(QMetaType::QObjectStar,&obj);
 
    //提取
    QObject* myobj=qvariant_cast<QObject*>(var);
    if(myobj!=NULL)
        qDebug()<<myobj->objectName();
 
    obj->deleteLater();

还有种写法,用QVariant的构造函数QVariant(int typeId, const void *copy)。虽然不常用,特别是指针类型,即 QMetaType::VoidStar,和 QMetaType::QObjectStar,一般还是用fromValue。但是还是以存取QObject*为例补充下吧,

起码知道写法

原文地址:https://www.cnblogs.com/sggggr/p/13879200.html