Помогите с типами



  • Здавствуйте уважаемые гуру! как мне в функции conv() привести привести все к QString? данная функция возвращает пустую строку :( уже пол дня мучаюсь....

    #include <QCoreApplication>
    #include <QDebug>
    #include <QString>
    #include <windows.h>
    #include <OleAuto.h>
    #include <typeinfo>
    #include <iostream>
    using namespace std;
    
    QString conv(VARIANT data);
    
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
    
        VARIANT var1;
        VARIANT var2;
    
        var1.intVal = 123;
        var2.bstrVal = (BSTR)L"I am a happy BSTR";
    
        qDebug() << conv(var1);
        qDebug() << conv(var2);
    
        return a.exec();
    }
    
    
    QString conv(VARIANT data){
        if (V_VT(&data) == VT_INT){
            return QString::number(data.intVal);
        }else if(V_VT(&data) == VT_BSTR){
            return QString((QChar*) data.bstrVal, wcslen(data.bstrVal));
        }else{
            return QString("");
        }
    }
    
    

Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.