Название: QAbstractItemModel::setItemData проблема Отправлено: asvil от Март 21, 2010, 18:21 Код: bool QAbstractItemModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles) Qt 4.6.1 gcc (Ubuntu 4.3.3-5ubuntu4) 4.3.3 Допустим в QMap два элемента. Допустим на первой итерации цикла setData возвращает false. На второй итерации setData НЕ вызывается. Это оптимизация gcc? А как ее отключить? Я переопределил setItemData, но хотелось бы минимально вмешиваться в уже созданное в qt. Название: Re: QAbstractItemModel::setItemData проблема Отправлено: Igors от Март 21, 2010, 18:44 Код: bool QAbstractItemModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles) Edit: правильно "setData не вызовется никогда если "b" уже false. То есть первый возврат setData = false делает дальнейшие проверки бессмысленными. Название: Re: QAbstractItemModel::setItemData проблема Отправлено: BRE от Март 21, 2010, 18:52 setData не вызовется никогда если "b" уже true. Сначала язык, потом умные итераторы Почему?Название: Re: QAbstractItemModel::setItemData проблема Отправлено: lit-uriy от Март 21, 2010, 18:52 >>Это оптимизация gcc?
скорее всего. Попробуй поменять местами аргументы оператора "&&" Название: Re: QAbstractItemModel::setItemData проблема Отправлено: lit-uriy от Март 21, 2010, 18:53 >>если "b" уже true
наверное имелось в виду "false" Название: Re: QAbstractItemModel::setItemData проблема Отправлено: Igors от Март 21, 2010, 19:06 Почему? Спасибо, поправился :) |