QXmlResultItems Class ReferenceКласс QXmlResultItems служит для итеративного обхода результатов исполнения XQuery в QXmlQuery. Далее... #include <QXmlResultItems> Замечание: Все функции в этом классе реентерабельны. Этот класс был введён в Qt 4.4. Открытые функции
Подробное описаниеКласс QXmlResultItems служит для итеративного обхода результатов исполнения XQuery в QXmlQuery. QXmlResultItems представляет вычисление связанного запроса в виде последовательности QXmlItems. Последовательность обходится с помощью повторяющегося вызова next(), который, на самом деле, создаёт последовательность ленивым исполнением запроса. QXmlQuery query; query.setQuery("<e/>, 1, 'two'"); QXmlResultItems result; if (query.isValid()) { query.evaluateTo(&result); QXmlItem item(result.next()); while (!item.isNull()) { // используем элемент item = result.next(); } if (result.hasError()) /* Ошибка времени выполнения! */; } Из-за того, что функции next() позволено лениво создавать последовательность результатов запроса, может произойти ошибка при вызове next(). Если случается ошибка, и next(), и current() вернут нулевой QXmlItem, а hasError() будет возвращать true. QXmlResultItems можно рассматривать как "iterator", который может проходить последовательность результатов один раз в одном направлении - только вперёд. Каждый вызов функции next() переводит итератор к следующему элементу QXmlItem в последовательности и возвращает его, а current() всегда возвращает QXmlItem, который next() вернула при последнем вызове. Замечание: При использовании перегрузки QXmlQuery::evaluateTo() объектов QXmlResultItem для выполнения запроса предпочтительнее создать новый экземпляр этого класса для всех новых наборов результатов нежели повторно использовать старый экземпляр. Смотрите также QXmlItem::isNode(), QXmlItem::isAtomicValue() и QXmlNodeModelIndex. Описание функций-членовQXmlResultItems::QXmlResultItems ()Создаёт экземпляр QXmlResultItems. QXmlResultItems::~QXmlResultItems () [virtual]Уничтожает экземпляр QXmlResultItems. QXmlItem QXmlResultItems::current () constВозвращает текущий элемент. Текущим элементом считается тот, который был последним возвращён функцией next(). Возвращает нулевой QXmlItem, если нет связанных QXmlQuery. bool QXmlResultItems::hasError () constВернёт true, если в процессе исполнения запроса произошла ошибка. Если запрос выполнился, вернёт false. QXmlItem QXmlResultItems::next ()Возвращает следующий результат в очереди с помощью ленивого исполнения связанного запроса. Когда возвращается нулевой QXmlItem, возможена одна из двух причин - вычисление завершилось нормально без результата или произошла ошибка. Вызовите hasError() для определения, что было причиной возвращения нулевого элемента - нормальное окончание работы или ошибка. |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |