Re[25]: Библиотека для создания графических интерфейсов поль
От: night beast СССР  
Дата: 15.09.17 20:44
Оценка:
Здравствуйте, MTD, Вы писали:

NB>>


MTD>Это С++, тебе нужна Ява? Иди и возьми.


мне не нужна ява, но и ручками за жизнью объекта следить сейчас не принято.

MTD>>>Зачем ты упорно выдумываешь то, чего нет? Нет там никакого подсчета ссылок, код я тебе уже показал. А этот код из деструктора QObject как уживается с выдуманным тобой шаред поинтером?


NB>>ага. это я придумал его в исходники QT засунуть.


MTD>Его там нет. Покажи.


показать что?

NB>>повторю для одаренных.

NB>>этот поинтер не для удаления чайлдов.
NB>>он для управления жизнью объекта без парента.
NB>>доступно?

MTD>Покажи пальцем или балабол.


QSharedPointer<QObject> obj1 = QSharedPointer<QObject>::create();
QSharedPointer<QObject> obj2 = obj1;

и смотри что в obj.data()->...->sharedRefcount лежит.
но. в 5 версии они это похерили, так что смотри в 4-й

конкретно присвоение идет в функции QtSharedPointer::ExternalRefCountData::setQObjectShared

для 5-й смотри здесь:

QObject* obj = new QObject();
QPointer<QObject> weak(obj;
delete obj;
assert(weak.isNull());

Отредактировано 15.09.2017 22:56 night beast . Предыдущая версия . Еще …
Отредактировано 15.09.2017 20:44 night beast . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.