nataraj: (Default)
[personal profile] nataraj
Моя голова не вполне понимает как ведет себя DOM дерево в рамках qt4 реализации, посему не мог бы многоуважаемый all поняснить что там происходит...

Вот например... загружаю я дерево из файла, и говорю firstChild на его корневой элемент. Что я получаю в результате, копию первого потомка? И соответсвенно если я вызову эту функцию несколько раз, то у меня будет несколько копий одного и того же узла которые помрут когда закончится фунция из которой я их звал? или все как-то сложнее?

Ну и если переформулировать вопрос в виде постановки задачи, то она такая: в программе есть DOM дерево которое живет вечно... хочется растащить ссылки на оное дерево по другим структурам данных. как это сделать?

Date: 2009-08-12 09:29 am (UTC)
From: (Anonymous)
При вызове firstChild возвращается объект QDomNode. Документация по qt говорит, что при QDomNode использует explicit sharing, т.е. если изменить одну копию возвращенного объекта, то изменятся и остальные. И да, т.к. они выделятся в стеке, то они будут уничтожены при выходе за область видимости. Поэтому, в структурах данных нужно хранить этот самый возвращенный QDomNode и работать с ним.

Profile

nataraj: (Default)
Swami Dhyan Nataraj

July 2024

S M T W T F S
 123456
789 10111213
14151617181920
21222324252627
28293031   

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 20th, 2026 08:20 pm
Powered by Dreamwidth Studios