Russian Qt Forum
Сентябрь 30, 2024, 14:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: вложенные STL контейнеры  (Прочитано 4074 раз)
woka
Гость
« : Июнь 12, 2012, 22:50 »

Доброго времени суток!
Пишу программу с вложенными qSTL контейнерами контейнерами :
Код:
QMap<QString, QPair<QString, int> > m;
и не могу ничего записать в них из за неумения пользования вложенными контейнерами. Подскажите как записать данные в каждый их элемент.
« Последнее редактирование: Июнь 13, 2012, 15:52 от woka » Записан
mutineer
Гость
« Ответ #1 : Июнь 12, 2012, 22:55 »

Код:
QPair<QString, int> item("string", 0);
m.insert("key", item);

или

Код:
m.insert("key", qMakePair(QString("string"), 0));
« Последнее редактирование: Июнь 12, 2012, 23:05 от mutineer » Записан
woka
Гость
« Ответ #2 : Июнь 12, 2012, 23:14 »

спасибо большое! очень помогли!
« Последнее редактирование: Июнь 13, 2012, 16:55 от woka » Записан
woka
Гость
« Ответ #3 : Июнь 13, 2012, 16:55 »

ещё подскажите как прочитать и изменить данные из этой структуры, я делаю так
Код:
QMap<QString, QPair<QString, int> >::iterator it;
it = m.begin();
qDebag()<<(*it).second;
она выводит  int-овое значение.
Код:
qDebug()<<(*it).first;
а так Qstring из пары. как мне узнать QString из QMap?
и сразу как изменять эти значения
Записан
mutineer
Гость
« Ответ #4 : Июнь 13, 2012, 16:59 »

как мне узнать QString из QMap?

it.key();

и сразу как изменять эти значения
Почитать доку по контейнерам
Записан
woka
Гость
« Ответ #5 : Июнь 13, 2012, 17:42 »

it.key();
извиняюсь. я писал
Код:
it.key; (*it).key(); *it.key();
, да и так вроде бы писал, но не работало. спасибо
Записан
alexis031182
Гость
« Ответ #6 : Июнь 13, 2012, 17:46 »

извиняюсь. я писал
Код:
it.key; (*it).key(); *it.key();
, да и так вроде бы писал, но не работало. спасибо
Все три варианта неверны. Не мучайтесь, посмотрите справку
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 21.