Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: VAP от Июль 09, 2009, 19:30



Название: Считывание данных контейнера QMap<unsigned char, QString>
Отправлено: VAP от Июль 09, 2009, 19:30
Доброго времени суток! Создал класс MyClass, наследованный от QMap<К, Т>.
В MyClass использую макро-определение:Q_DECLARE_METATYPE<MyClass>, для класса QVariant (возможности получения данных разных типов); Для считывания данных из контейнера хочу использовать QDataStream:
              QDataStream stream;
              stream >> v; /*QVariant*/
              MyClass c;
              v.setValue(c);
              MyClass class = v.value<MyClass>();

Правильно ли я делаю, на первый взгляд как-то некрасиво выглядит? Может есть какай-то другой метод?


Название: Re: Считывание данных контейнера QMap<unsigned char, QString>
Отправлено: denka от Июль 09, 2009, 21:29
Пару комментарий к коду:
Код:
QDataStream stream;
stream >> v; /*QVariant*/
MyClass c;
v.setValue(c); // Не важно что нам все таки удалось там считать мы его затрем
MyClass class = v.value<MyClass>(); // А теперь мы получим наше с

Думаю будет правильным определить свой оператор >>