struct MyStruct{ QString str; int a; int b;};Q_DECLARE_METATYPE(MyStruct)...QVariant MClass::blaFunc() const{ QVariantList result; QVariant buf; MyStruct data; // готовим данные for(int i=0;i<4;i++){ data.str=QString("string %1").arg(i); data.a=i+2; data.b=i*100; buf.setValue(data); result.append(buf); } return result;}...QVariant Data=blaClass->blaFunc();if(Data.canConvert(QVariant::List)){ QVariantList list=Data.toList(); QListIterator<QVariant> it(list); QVariant buf; MyStruct realData; while(it.hasNext()){ buf=it.next(); if(buf.canConvert<MyStruct>()){ realData=buf.value<MyStruct>(); // нужные операции со структурой } }}